Vehicle-to-vehicle safety transceiver free of ip addresses

ABSTRACT

A transceiver in a vehicle-to-vehicle (V2V) communication and safety system that regularly broadcasts safety messages, comprising location, heading and speed, of a subject vehicle, that are free of MAC and IP addresses. The V2V system uses the location of the subject vehicle for vehicle identification, in place of a pre-assigned vehicle ID. Some embodiments broadcast safety message in self-assigned time slots in a synchronized TDMA broadcast architecture, with unusually short inter-message gaps and unusually short messages. The TDMA frame is partitioned into three prioritized time interval classes with differing priorities and dynamically changing sizes based on demand of higher-priority messages. Time slot selection uses weighted algorithms. Selected time slots are held until either a message collision or a timeout occurs. A transceiver equipped vehicle may proxy a different subject vehicle. Embodiments include optimized traffic flow and signal timing.

CROSS REFERENCE TO OTHER APPLICATIONS

This is a continuation-in-part application based on a parent applicationof: U.S. application Ser. No. 13/557,711, filed Sep. 25, 2012, which inturn is based on a parent application of U.S. Application No.61/637,588, filed Apr. 24, 2012, both of which are hereby incorporatedby reference;

Applications of related subject matter include:

-   U.S. application Ser. No. 13/556,123;-   U.S. application Ser. No. 13/557,805;-   U.S. application Ser. No. 13/559,452;-   U.S. application Ser. No. 13/559,493;-   U.S. application Ser. No. 13/559,508;-   U.S. application Ser. No. 13/559,519;-   U.S. application Ser. No. 13/559,525;-   U.S. application Ser. No. 13/559,536;-   U.S. application Ser. No. 13/559,542;-   U.S. application Ser. No. 13/633,482;-   U.S. application Ser. No. 13/633,561;-   U.S. application Ser. No. 13/633,657.

BACKGROUND OF THE INVENTION

Four people are killed in motor vehicle accidents in the US every hour.Based on 2007 information from the National Association of Commissionersof Insurance and 2008 information from the United States Department ofTransportation (DOT), the cost of vehicle insurance in the US in 2008was $201 billion.

Consumer Reports magazine in 2012 reported an additional $99 billiondollars in medical costs and lost time due to vehicle accidents everyyear in the US.

Thus, the cost of vehicle accidents in the US is approximately $300billion per year. This is approximately $1000 for every US residentevery year.

Various technology-based methods have been proposed to reduce the numberof vehicle accidents. The basis of some of these methods is wirelesstransmission by a sending vehicle of its position and speed, then thecomputation by a receiving vehicle of a possible collision between thetransmitting vehicle and the receiving vehicle by computing the futurepositions of both vehicle based on the received information combinedwith the position and speed information of the receiving vehicle. Then,either the driver of the receiving vehicle is warned to take evasiveaction or evasive action is initiated by the receiving vehicleautomatically.

Such systems are sometimes called “V2V” for Vehicle-to-Vehiclecommunication.

V2V systems have been deployed on a limited basis for commercial trucksand pilot tests have been performed on automobiles. However, suchsystems are not in widespread use, nor is widespread use beingimplemented or planned. A collision detection system for ships iscurrently widely used, called Automatic Identification System, or AIS

A standard has been developed and adopted for V2V communication by IEEE:IEEE 802.11p. This is not the protocol used by AIS.

These systems as proposed and developed suffer from serious weaknesses.One weakness is unnecessary complexity.

Another serious weakness of V2V systems as proposed is the use of aninappropriate, non-deterministic basis for message transmission.Real-time systems, particularly those related to safety, as is V2V byits very definition, require deterministic, consistent delivery ofinformation. The systems as proposed use non-deterministic, “randomback-off” transmission of messages, such as CSMA/CA. Suchnon-deterministic systems were designed for, and are appropriate for,non-real time applications such as loading web pages and sending textmessages.

Yet another serious weakness of V2V systems as proposed is lack of asimple, usable priority system that is integrated with bandwidthallocation. Priority of messages is important to assure that the mostimportant messages get through while the least priority messages aredelayed or dropped.

Yet another serious weakness of V2V systems as proposed is lack of cleardistinction between emergency vehicle messages and non-emergency vehiclemessages.

Yet another serious weakness of V2V systems as proposed is lack of clearbandwidth allocation rules separating safety-related messages fromnon-safety related messages.

Yet another serious weakness of V2V systems as proposed is a lack ofability to practically include pedestrians and bicycles in the system.

Yet another serious weakness of V2V systems as proposed is a lack ofability to take advantage of widely popular personal, mobile electronicdevices to increase the installed penetration rate.

Yet another serious weakness of V2V systems as proposed is lack of acomplete application layer protocol, such as message formats andmeanings. Without this specification there is no compatibility betweendifferent manufacturers or implementations.

A weakness of AIS is that it is too slow for V2V use.

SUMMARY OF THE INVENTION

This invention is in the area of vehicle-to-vehicle collision preventionsystems and methods. In particular this invention uses a transceiverwith a protocol that is free of MAC address, free of IP address, andfree of pre-assigned or permanent vehicle ID's, in combination invarious embodiments. Embodiments use TDMA rather than the CSMA physicaland data link layer protocols of prior V2V protocols. Algorithms includevarious ways to self-assign TDMA time slots, including “weighted”functions that cause in-use time slots to clump, which in turn frees upa portion of the TDMA time interval or “frame” for other uses, includinglow priority messages, or longer messages, or CSMA managed messaging, invarious combinations.

In place of either IP address or a pre-assigned vehicle ID, the vehicleposition is used for vehicle identification.

The summary features described below apply to one or more non-limitingembodiments. They are summarized briefly for readability andcomprehension: thus, these summary features include many limitations notincluded in the invention. The summary feature should be viewed as oneexemplary embodiment: as an anecdotal scenario of one usage.

A physical layer protocol comprises very short packets, with anunusually brief inter-frame gap, operating in government-approvedspectrum for V2V applications.

All messages are broadcast. All V2V equipped vehicles within rangereceive and process all messages.

Most messages are broadcast as cleartext. A provision is made totransmit lower priority or emergency vehicle messages encrypted.

Most of the frame structure, modulation and encoding is compatible withIEEE 802.11p, and a similar standards, including DSRC. This permits theuse of standard chips and chip level standard cells and intellectualproperty, as well as the known features of the encoding types supportedby 802.11p. Included is the use of a 32-bit frame check sequence (FCS)on each frame.

Core data messages are transmitted using the most reliable encodingsupported by 802.11p, which is a 3 mbit/sec, OFDM, BPSK encoding. Noncore-data messages may be transmitted with an encoding for a higher datarate, such as 6 mbit/sec or 12 mbit/sec. This allows more data to beplaced in a message that still occupies only a single time slot.

Also non core-data sub-messages may be combined with core datasub-messages and transmitted occasionally using a higher data rate ifthis is viewed by the transmitting devices a reliable way or appropriateencoding to deliver the data.

A physical layer protocol comprises variable length messages in turncomprised of a variable set of fixed length sub-messages where thesub-message length and format is determined by a sub-message type field.One message type, type 0, is fixed length and does not containsub-messages.

Core data transmitted at the physical layer is highly compressed informats unique to this application, which keeps core message lengthparticularly short.

Vehicles typically transmit one message every basic time interval, whichis ideally 0.1 seconds. Thus, vehicles and the system as a wholegenerally transmits and receives updated data ten times per second.

The 0.1 s basic time interval is broken into 1000, 100 microsecond timeslots. The shortest and most basic messages, including messagecomprising core vehicle data, fit into one time slot. This structuresupports vastly more vehicles within range than prior art.

Embodiments include other basic time interval lengths, other time slotlengths, and other numbers of time slots.

Vehicles self-assign their own time slot using one of the algorithmsdescribed.

Message collisions are detected and managed using a described method.

Vehicle identity is determined by the location of each vehicle. Asvehicles move, the data that comprises the transmitted location changes;each receivers tracks the progress of each vehicle and thus maintaincontinuous, effective vehicle identity.

Core message data comprises vehicle heading and speed (collectively,“velocity”), vehicle position, vehicle type, and one or more riskvalues. Embodiments include core messages comprising only vehiclevelocity and position.

Core message data, also called a “safety message” is sent every basictime interval (0.1 s, typical).

Core message data is in a novel format that reduces the number of bitsthat need to be sent.

A novel method is employed that eliminates the use of timestamps forvehicle data, yet provides very high timing accuracy of vehicle data:vehicle data is valid at precisely the end of the basic time interval inwhich it is sent.

GPS is used as the primary or synchronizing time base, in oneembodiment. Other satellite positioning systems may be used. Time isreferenced to UTC.

A novel method is used to determine the time base when no GPS signal isavailable.

The period of time that a vehicle continues to use the same time slot isintermediate, typically up to 30 seconds. Thus, there is a low rate ofnew time slot acquisition and the reliability of message delivery isvery high.

Time slots, because they are maintained for an intermediate duration,provide a secondary means of vehicle identification.

Typically, a vehicle continues to use the same time slot until one oftwo events occurs: either that time slot is involved in a messagecollision or a time slot timer expires. The use of a time slot timerpermits vehicle to periodically pick a new time slot so that theselected time slots are “clumped” near one end of the basic timeinterval so as to free up contiguous block of time slots in the middleof the basic time interval that may be used for lower priority messages,longer messages, or CSMA managed messages, or a combination.

The basic time interval (0.1 s, typical) is subdivided dynamically intothree time regions: interval class A, interval class B, and intervalclass C. Interval class A comprises communications in time slots andrestricted to a single time slot for each message. Interval class A isused by most vehicle for high priority messages. Interval class Ccomprises communications in time slots and restricted to a single timeslot for each message. Interval class C is used by emergency vehiclesfor high priority messages, and also by government provided road-sideunits (RSU), optionally. Interval class A starts at time slot 1 andworks upward from the start of each basic time interval. Interval classC starts at time slot 1000 (or, the highest numbered) and works downwardfrom the end of each basic time interval. Interval class B is betweenthe end of interval class A and the start of interval class C. Intervalclass B's beginning and end times are determined computed dynamically ateach basic time interval. Interval class B communication is managedusing CSMA/CA, the traditionally method of shared media management forIEEE 802.11 wireless communication.

Thus, the use of above interval classes A, B and C provide a hybridmethod of managing shared spectrum, that provides both highly efficientand reliable time slot based allocation and highly flexible CSMA/CAallocation.

The use of the above interval classes A, B and C, where the duration andlocation of class B is dynamic, assures that high priority messages getthrough, while additional available spectrum and bandwidth is availablefor lower priority messages.

The use of the above interval classes A and C provide a dedicated,assured capacity for emergency vehicles, whose communications takepriority over both class A and class C messages, while allowing unusedspectrum to be used for lower priority messages. The use of intervalclass C for government provided RSU's also provides a reliable,generally non-changing time slot for such informational broadcasts.

The system provides for “proxying,” which is where an equipped vehiclesends a V2V message on behalf of a nearby non-equipped vehicle. Proxyingis a critical embodiment that permits this V2V system to be effective atpreventing accidents with a relatively low penetration rate.

Local sensors, such as video, radar, and sonar are used by a firstvehicle to determine relative speed, location and heading of anon-equipped, nearby, second, “subject” vehicle, to proxy.

A single bit in a message header indicates that a message is a proxymessage being transmitted by a vehicle other than the subject vehicle.This is a highly efficient means to send proxy messages.

An embodiment uses a novel method to “hand off” the transmission of aproxy message from one transmitting vehicle to another transmittingvehicle.

Unlike prior art using CSMA/CA for V2V messages, embodiments usemoderately fixed time slots for real-time message delivery, even forCSMA/CA messages in interval class B.

A novel method is used to compress location data into 24-bits per axis,with one cm resolution.

A novel hybrid location coding method is used that uses first latitudeand longitude for “base grid” points, then distance (in cm) from a basegrid point to establish actual position on the surface of the earth.

Angle of travel breaks the 360° compass headings into 1024 headings.These are encoded using 10 bits.

A novel method to encode speed uses a non-symmetric range around zerospeed to support speeds in the approximate range of 25 mph backwards, to206 mph forwards. Speed is encoded to a resolution of about 0.2 mph,using 10 bits.

Actual units used are metric for global compatibility.

Embodiments adjust transmit power to maintain adequate bandwidth forhigh-priority messages.

However, typically, power is kept at a minimum, and adjustedcontinually, to keep range, the number of vehicles with range, thenumber of time slots in use in each interval class, and messagecollisions down to a minimum while still achieving highly reliablereception of messages for those vehicles that need to receive themessage for safety reasons.

Unlike prior art, embodiments use a medium grained message priority toassure that both high-priority messages get through and that availablebandwidth is efficiently utilized.

Unlike prior art, transmit power level is managed by a group “consensus”algorithm.

Unlike prior art, both actual transmit power and requested transmitpower levels information is placed into appropriate message types.

A novel location “consensus” algorithm is employed to determine relativepositions of vehicles in range to high accuracy.

A novel algorithm is employed to determine which vehicles shouldparticipate in the location “consensus” set.

A novel algorithm is employed to quickly and efficiently identify andcorrect for message collisions—two vehicles using the same time slot.This algorithm uses two different methods of identifying vehiclesinvolved in the message collision.

A novel algorithm is employed to provide a short term “overflow” bufferzone for vehicles to use in the even their time slot of choice isrepeatedly unavailable. A buffer zones is located between interval classA and B; another buffer zone is located between interval class B and C.

A novel method is employed whereby a vehicle may send a high-prioritymessage in interval class B if it unable to find an assured time slot ininterval class A or C.

A novel method is employed to provide available bandwidth in intervalclass B for higher priority messages than normal class B messages.

A novel method is employed to send long messages as a “chain” of shortermessages.

A novel method is employed to permit occasional use of more than onetime slot by a transmitting vehicle.

A novel method is employed that uses the most reliable encoding methodfor high priority messages while lower priority messages may use ahigher density, but less reliable encoding method.

A novel method is employed that allows a transmitter to send a messagein a single time slot that normally would be too long to fit in a singletime slot by temporarily using a higher-than-normal-density encodingmethod.

Special transmitter power management and message timing are used in a“parking lot mode.”

Messages may be directed to a single vehicle by the use that vehicle'slocation for identification. Note that the actual location for a givenvehicle changes continually, as it moves.

In some cases, a vehicle may be identified by the time slot it is using.

The level of risk is computed to a “risk value,” using an 11-step scale.The advantage of this “medium grained” scale is that each numeric risklevel has a well-defined meaning with respect to both how peopleperceive risks and the specific responses a V2V system must engage whenit receives a particular risk level.

A novel feature uses the risk value as a message priority. Such messagepriorities are used in a priority method to assure that the highestpriority messages always get through.

Risk value is computed by the transmitting vehicle.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a basic time interval of 0.1 s with 1000 numbered timeslots, each 100 μs.

FIG. 2 shows a single 100 μs message frame in IEEE 802.11p format, witha 3 mbit/s modulation, comprising SIGNAL, SERVICE, FCS, and Tail fields,with 114 bits available for a V2V message.

FIG. 3 shows a single 100 μs message frame in IEEE 802.11p format, witha 6 mbit/s modulation, comprising SIGNAL, SERVICE, FCS, and Tail fields,with 282 bits available for a V2V message.

FIG. 4 shows the exemplary vehicles in two traffic lanes, with vehicles1 and 3 V2V equipped, vehicle 2 unequipped and being proxied.

FIG. 5 shows an exemplary vehicle collision.

FIG. 6 shows exemplary heavy traffic at an intersection.

FIG. 7 shows an exemplary embodiment of a V2V transceiver.

FIG. 8 shows a Final Risk Value Table.

FIG. 9 shows a Vehicle Behavior Sub-risk Value Table.

FIG. 10 shows a Weather and Road Conditions Sub-risk Value Table.

FIG. 11 shows one embodiment of basic V2V message fields.

FIG. 12 shows one embodiment of Collision Type coding

FIG. 13 shows a Braking Sub-risk Table.

FIG. 14 shows a Turning Sub-risk Table.

DETAILED DESCRIPTION OF THE INVENTION

Table of Contents Concept and Definitions 12 Proxying 15 Physical Layer18 Interval Classes 19 Selecting a New Time Slot 27 Interval Class BMessage Timing Error! Bookmark not defined. Vehicle Identification 39Location and Velocity Coding 41 Power Management 41 Passive Reflectors42 Interval Class B and Courtesy Messages 42 Message CollisionNotification 44 Message Formats 49 Message Types 66 PositionDetermination 70 Lane Maps 71 Vehicle Elevation 71 Forwarding 73 Hackingand Security 74 Recording and Encryption 77 Traffic Signal Optimization77 Time Base and Timestamps 81 Conserving Gas 83 Automatic Turn Signals84 Definitions 85 Claim Specific Comments 85

Concept and Definitions

A basic heart of a V2V system comprises an equipped transmissionvehicle, an equipped receiving vehicle, an assigned spectrum andphysical (wireless encodings, bandwidth and power) layer, and an agreedmessage protocol. The transmitting vehicle transmits its position, speedand direction. The receiving vehicle receives the transmission andcompares the transmit vehicle information with its own position, speedand direction. This comparison results in a possible collisiondetermination, with an appropriate warning or action taken in response.

We refer to the combination of speed and direction as “velocity.” Werefer to the location and velocity of a vehicle, along with any otheroptional information about the vehicle or its environment as “vehicleinformation” or “vehicle data.”

We refer to any variation in transmitters and receivers, so long as atleast one is capable of motion, as “V2V.” For example, fixed equipmentto vehicle is sometimes known as X2V, or the reverse, V2X. We use V2V toencompass all such variations, including, for example, bicycle topedestrian, or fixed roadside hazard to vehicle. Similarly, when werefer to a “vehicle” we mean any equipped V2V device or entity,including, without limitation: land vehicles, cars, trucks, motorcycles,pedestrians, bicyclists, strollers, moving sports equipment, forklifts,robots, automated vehicles, off-road vehicles, all-terrain vehicles,snow vehicles, aircraft, drones, boats, ships, personal watercraft,pets, livestock, wild animals, moving and fixed road hazards,locomotives, people movers, farm equipment and construction equipmentand construction obstacles.

“Range” refers generally to the distance or area in which two or morevehicles may communicate, at least on one direction, point-to-point,without forwarding, using V2V protocol. Range may be extended in somecases with intentional or accidental reflectors.

“V2V protocol” refers to the aggregate of communication within thisdocument, including what the ISO model refers to as layers 1 throughlayer 7, that is, the physical layer through to the application layer,inclusive. The V2V protocol moves discreet “V2V messages” betweenvehicles, predominantly in a point-to-point communication mode.

A “V2V transceiver” is a device capable of both transmitting andreceiving V2V messages via a V2V protocol.

A vehicle is “equipped” when it has a functional, compatible, operatingV2V transceiver.

Descriptions herein are for a normally operating system. It isunderstood that for various reasons a system may not performing asdescribed 100% of the time. A vehicle may be starting up, or have aninternal error, or processing power or use of a shared resource may berequired for another function. Such variations in operation, which donot grossly detract from the overall purpose of the system, areconsidered within the scope of claimed embodiments. For example, atransceiver may send messages in only 99% or 90% of all time intervals.Nonetheless, such a transceiver is considered to be “sending in all timeintervals,” because of the functionally equivalency. In generally, formost functions, if a device or system performs as described at least 50%of the time, or in at least 50% of basic time intervals, or at least 50%of time slots, it is considered to be operating as described orequivalently to the described embodiment. The word, stated or implied,“all,” means “effectively all, or most, so as to achieve the intendedpurpose.” Similarly, a system may be sleeping, dormant, or in anotheroperating mode. The fact that it is capable of operating as described atleast some of the time is likely equivalent for the intended purpose,and thus such operation is included in the scope of the claimedinvention.

“Core information” refers generally to a vehicle's position, speed,direction and size. We treat core information as the minimum informationneeded for a receiver to determine and avoid a collision. Risk value andsource may be included with core information. A minimum amount ofinformation about the size of vehicle is also needed as a way to quicklyestimate the two-dimensional footprint or three-dimensional physicalextent of the vehicle. For example, a simple “vehicle type” designationfrom a set (such as: car, small truck, large truck, oversized vehicle,pedestrian, bicycle, barrier) is generally adequate. This simple vehicletype designation provides both an approximation of vehicle size andshape and an approximation of possible future and defensive options forthe vehicle. For example, cars can stop faster than trucks. As anotherexample, pedestrians frequently operate safely with a lesser distanceamount of separation than vehicles. As a third example, a fixed barrieris not expected to take any dynamic measures to avoid a collision.

The terms “accident” and “collision” have largely the same meaning. Theterm “collision” is generally preferred.

The terms “collision avoidance,” “collision prevention,” and “collisionmitigation” have meanings that substantially overlap. The use of oneterm over another should not be viewed as limiting. In general, weprefer the term, “collision avoidance” to refer to all forms of avoidingand preventing collisions, manual and automatic defenses and responses,and damage and injury mitigation should a collision occur. Mitigation isa key benefit of this invention, even if full avoidance does not occur.Thus, “anti-collision” specifically comprises all forms of damage andinjury mitigation and minimization, including responses appropriatebefore, during and after a collision occur.

The optimal “position” for a vehicle to transmit is generally the centerof the front of the vehicle. As most collisions involve at least onevehicle front, this is a most critical point. The four corners of arectangular vehicle are readily calculated based on approximate sizefrom the vehicle type. There are a few exceptions. For example, if alarge truck were backing up, it would be appropriate for the positiontransmitted to shift to the center rear of the vehicle. As anotherexception, a fixed barrier should preferably transmit its most extremepoint—that is the point closest to possible collision traffic.

The terms “position” and “location” are generally used interchangeablyherein. Position or location may be absolute geolocation, such as GPScoordinates, or may be relative, such as an offset from another vehicle.Ideally, “location” is a preferred term for an absolute geolocationcoordinate, or its equivalent, while “position” is a preferred term whendiscussing the close relationship of two points. However, since theabsolute and relative coordinates are computationally interchangeable,alternate usage is primarily for emphasis and convenience.

We use the term “acceleration” to describe any rate of change ofvelocity. Thus, this includes braking, turning, and speeding up.

While “range” is a term related to the effective maximum point-to-pointwireless communication distance of two vehicles, we introduce a term,“known vehicle” which is a vehicle whose position, velocity and type areknown to within some threshold of accuracy and reliability. A vehiclemay be known because it has broadcast that information, but is out ofsight. A vehicle may be known because it is “seen” by one or moresensors, such as a video camera, radar, sonar or lidar. This lattervehicle may or may not be equipped.

We will not discuss here the computations to determine future positionsof vehicles, as these are well known. We will not discuss theelectronics for transmitting, receiving, encoding, or decoding digitalinformation wirelessly, as these are well known. We will not discussmethods of obtaining GPS coordinates, or obtaining video or still imagedata from a camera, or obtaining distance measurements from a sonardevice or lidar device as these are well known. We will not discuss themicroprocessor, memory, power supply or packaging of a V2V transceiver,as these are well known.

Proxying

Proxying is a key embodiment of related subject matter.

Proxying the detection of nearby non-equipped vehicles and thetransmission of data about that vehicle. In one embodiment the actualtransmitting vehicles “pretends” to be the non-equipped vehicle for thepurpose of putting data into a V2V message. Thus, it not strictlynecessary to identify the true sender, but rather it is more importantthat the core information be transmitted. Our preferred embodiment usesa dedicated bit in the message header to identify proxy messages, as ahighly efficient means to send proxy messages that fit within one timeslot, without the overhead of including two vehicle locations in themessage.

Thus, the “subject vehicle” of this invention may not be the vehicle inwhich a transponder is installed. Also, any transmission about a vehiclemay not necessarily be broadcast from that vehicle.

A first, equipped, subject vehicle that is also proxying for a second,non-equipped vehicle may use two time slots, almost exactly as if thesecond vehicle was in fact equipped. Indeed, there is no limit to thenumber of vehicles that may be proxied by the first vehicle.

When discussion embodiments, a particular message or transaction may beregarding the equipped, transmitting vehicle, or may be the proxy. Thus,a transmitter or vehicle may be “virtual,” in this sense.

It is desirable but not critical to know the identity of the proxytransmitter. This information may be communicated in several ways. Apreferred method is to send a single message that comprises both theidentity of the proxy transmitter and the identity (location) of theproxy subject. Such a message is called a “proxy linking” message. Itmay be sent in either interval class B or A. Ideally, this messageshould be send in the same or subsequent basic time interval as thefirst proxy message, or as soon as possible thereafter. In addition,such a proxy linking message should be sent regularly, such as every twoseconds. Once a proxy linking message has been received, the receivermay generally assume the identity of the proxy messages until a proxylinking message is received, or a new time slot is used for the proxymessage. A proxy linking message may be sent with a low encoding rate ininterval class B, or at a higher encoding rate in interval class A.

An alternative method of sending proxy messages comprises alternatelysending core data for the proxy transmitting vehicle and the proxysubject vehicle in alternate basic time intervals, using the same timeslot. For example, 50% of time intervals comprise data for the equippedvehicle, while 50% of the time interval comprises data for the proxyvehicle. It is most applicable when no risks are associated with eithermessage.

FIG. 4 shows three typical vehicles, numbered 1, 2 and 3. Vehicles 1 and3 are equipped with V2V transponders, shown on the roof of the vehiclesas an antenna. Vehicle 2 is not equipped. In normal operation, vehicle 1and 3 each transmit their location and velocity ten times per second.Vehicles 1 and 3 receive each other transmissions. If vehicle 1 wereabout to rear-end vehicle 3 both vehicle 1 and 3 would provide a warningto the drivers. If necessary, vehicle 1 would active an automaticbraking system to prevent the collision.

Vehicle 2 is not equipped. However, both vehicles 1 and 2 “see” vehicle2 with their local sensors, such as video, radar and sonar, which allowboth the relative location and velocity of vehicle 2 to be determined.Both vehicle 1 and vehicle 3 are able to transmit a “proxy” message forvehicle 2, here called the “object vehicle” of the proxy. To do this,the transmitting vehicle typically takes a new time slot and advertisesvehicle 2's position as if vehicle 2 were in fact equipped. Althoughboth vehicle 1 and 3 are able to “see” vehicle 2, ideally one of vehicle1 or vehicle 3 should transmit a proxy message. Since both vehicle 1 andvehicle 3 are receiving all messages from transmitters in range, theyknow if some other vehicle is already broadcasting a proxy message forvehicle 2. If such a proxy is already being broadcast, a repeat proxybroadcast is not necessary. In the case of this Figure, vehicle 1 isbroadcasting the proxy message for vehicle 2. As vehicle 2 speeds up andpasses vehicle 3, it is no longer in sight of vehicle 1 so vehicle 1will stop broadcasting proxies for vehicle 2. However, vehicle 2 isstill in sight of vehicle 3, and vehicle 3 notices that there are nolonger proxy messages for vehicle 2, so it begins to broadcast a proxymessage for vehicle 2. It may use the same time slot for this proxymessage that vehicle 1 was previously using.

Physical Layer

Discussion below is for one embodiment. All provided metrics of time,distance, priority and encodings have variations in other embodiments.

Embodiments use a physical layer related to the prior art of IEEE802.11p for modulation, but with important differences in both data linkand physical protocols. Each 0.1 second is broken into 1000 time slots,each 100 μs in duration. Vehicles send their core information (orproxies) in a selected time slot. Effective range is 250 meters. Everyvehicle transmits, in our preferred embodiment, every 0.1 seconds. Thisinterval is called the basic time interval. Sometimes this protocol isreferred to as TDMA. The basic time interval is sometimes referred to asa “frame.” The basic time interval is broken into three time zones:interval classes A, B and C. Class A is for regular safety-relatedmessages, also called “priority messages,” or “regular priority,” or“safety related message.” Class C is reserved for emergency vehicles andoptionally government provided road-side equipment (RSU's). Class B isfor non-safety-related messages, also called, “low-priority messages.”These messages may be longer than Class A and Class B messages. Class Astarts at time slot zero and moves upwards, based on demand within theclass for time slots. Class C starts at time slot 1000 and movesdownward, also based on demand with the class. Class B does not use timeslots, but rather a modified CSMA/CA. The duration of each class changesevery basic time interval.

The basic time interval is divided into three “interval classes:”Interval class A starts with time slot 1 and uses consecutively numberedtime slots counting upwards from there, such as 2, 3, 4, etc. Intervalclass C starts with time slot 1000 and uses consecutively numbered timeslots counting downwards from there, such as 999, 998, 997 etc. Intervalclass B is in between interval class A and interval class C. Intervalclass B uses time slots optionally. This organization of the basic timeinterval into three interval classes, with each interval classcomprising messages with specific attributes, including priority, is aunique and innovative aspect of this invention.

Interval class A contains safety-related, standard-priority orhigh-priority messages. These are the fundamental messages for vehiclecollision avoidance and mitigation in the V2V system. Interval class Ccontains V2V messages from emergency vehicles and certain fixed,government provided, road-side equipment such as traffic signals,optionally.

The allocation system of time slots in interval classes A and C causestime slots to be allocated “near the ends” of the basic time interval.That is, chosen time slots in interval class A tend to clump in in thelowest numbered time slots, while chosen time slots in interval class Ctend to clump in the highest numbered time slots. The number of timeslots actually used in the interval classes A and C depends on the needsof equipped vehicles within range. Thus, the size (as number of usedtime slots) of interval classes A and C is variable, and changesdynamically. Interval class B may be viewed as the “left over” bandwidthof the system, available for use for lower priority messages.

Interval Classes

A unique feature of one embodiment is that the dividing lines (in time)between interval classes A and B; and between interval classes B and C,are variable.

The way this works is that time slot selection for transmissions forinterval class A and C are “weighted” towards the ends of those intervalclasses. Interval class A is weighted towards time slot 1. Intervalclass C is weighted towards the highest numbered time slot, such as1000.

Time slots are still selected using an element of randomness. UnlikeCSMA/CD and CSMA/CA, a weighting factor is used to push the probabilityof time slot selections towards the ends of the A and C intervalclasses. Weighting factors, functions or algorithms may be linear,exponential, or other shapes. The probability function is preferred tobe monotonic with respect to time slot number. The specific weightingfactor uses varies with the number of time slots used or the number ofvehicles transmitting within range. When only a few time slots are inuse, the weighting is “heavy,” keeping new time slot selections near theends of the interval classes. When many time slots are in use, weightingis minimal, or zero, spreading out the time slots selections within thebasic time interval, and maximizing the chance of a non-interfering timeslot selection.

Between the last normally-used time slot in interval class A and thestart of interval class B, a predetermined number of time slots are leftempty as a buffer zone. These buffer time slots may be used when a V2Vtransmitter is having trouble selecting a new, clear time slot, or fornew “high risk” messages. This buffer zone may be viewed as an“overflow” or “emergency” zone. There is a similar zone between intervalclass C and the end of interval class B. This buffer zone is used byclass C transmitters. A suitable width of the buffer zones is 25 timeslots each.

Looking now at FIG. 1 we see what a basic time interval looks like forone embodiment. The times shown in this Figure, which may be differentin different embodiments, are: the duration of the basic time intervalat 0.1 seconds; the number of time slots in the basic time interval at1000; and the time duration of one time slot at 100 microseconds. V2Vtransceivers typically send a location update message every basic timeinterval, or ten times per second. They typically use one time slot fortheir transmission, with each equipped vehicle using a different timeslot. Messages in interval class A use low numbered time slots at thestart of the basic time interval, starting with one and working upward.Messages in interval class C use high numbered time slots starting with1000 and working downward. The empty time area near the middle of thebasic time interval—between the last interval class A time slot used andthe first interval class C time slot used is the interval class B.Message in interval time slots A and C are restricted to one time sloteach in duration and must be safety-related messaged. Messages ininterval class B maybe longer than one time slot and may benon-safety-related messages.

FIG. 1 also shows two optional buffer zones, discussed in more detailbelow. Note that the sizes, in time slots, of interval class A, intervalclass B, interval class C, buffer zone 1 and buffer zone 2 are alldifferent. Typically, as interval class A expands interval class Bshrinks, and the buffer 1 size may or may not expand. Typically buffer 1has a minimum size, such as 25 time slots, and also a minimum percentageof interval class A size, such as 10%, 25% or 50%, up until intervalclass B size is zero. Interval class C and buffer zone 2 are similar,but grow from the end of the basic time interval. Typically intervalclass C is smaller than interval class A. Interval classes A and Ctypically have a minimum size, such as 50 and 25 time slots,respectively.

Looking now at FIG. 2 we see the organization and timing of one V2Vframe. Most of what is shown in this frame is prior art, for example,IEEE 802.11 and IEEE 802.11p. The 32 μs PLCP preamble has two trainingsequences that allow receivers to lock onto the transmitter's signal.The 8 μs SIGNAL field comprises the RATE field at 4-bits; then a 1-bitreserved field; then a 12-bit LENGTH field, then a 1-bit PARITY field;then a 6-bit TRAIL field. The PLCP preamble and the SIGNAL field arecompatible with 802.11p. The SIGNAL field contains information thatinforms the receiver about the modulation that will be used in theupcoming DATA field. This Figure shows the DATA field modulated at a 3mbit/s data rate. Symbols (except in the PLCP preamble) are 8 μs induration and contain 24-bits each. The entire frame must fit within onetime slot, here shown at 100 μs. There is a 4 μs guard time at the endof the transmission during which there is no transmission at all. Thisguard time is unique. This guard time allows different time of flight,up to a maximum of about 1.2 kilometer. The preferred embodiment of thisinvention is to limit power to an effective range of 250 meters.

The DATA field data rate is effectively set by information in the SIGNALfield. Shown here, at a rate of 3 mbit/s, there is room for 168 bits inthis field. At the start of the DATA field is a 16-bit SERVICE field.This field maintains compatibility with IEEE 802.11p. The HEADER fieldis defined by this invention. It is used in all frames. It providesinformation on the length of the message and flag bits. At the end ofthe DATA field is a 32-bit FCS or Frame Check Sequence. These bits coverthe entire DATA field. The use of these bits provides receivers with avery high level of confidence that they have correctly demodulated theframe. The FCS is defined for this frame in this embodiment by IEEE802.11.

After the HEADER and before the FCS is room for one or moresub-messages. It is these sub-messages that contain the V2V informationor implementing the V2V application layer functionality. The 114 bitsshown in this Figure is sufficient for core messages and many othersub-message types.

FIG. 3 is similar to FIG. 2, except that now the data rate for the DATAfield is 6 mb/s, which permits 282 bits in the V2V message. Thistypically allows more than one sub-message in this frame. At this datarate, 8 μs symbols now contain 48 bits each.

If two transmitters within range of each other choose the same time slotin a basic time interval then there is a message collision in that timeinterval. At least one of the transmitters then makes a new time slotselection, using the time slot selection algorithm. There is no“back-off delay” in the sense of CSMA/CA and CSMA/CD, but rather newtime slot selection for the next basic time interval. (Fixed road-sideequipment, such as signals, may wait up to two basic time intervalsbefore selecting a new time slot upon a collision. If the collision goesaway, then the original time slot may be maintained. This generallyforces vehicles to change time slots, rather than fixed equipment.)Alternatively, a transmitter that must select a new time slot due to amessage collision may select a new time slot in the same basic intervalas the collision, assuming the transmitter is able to detect thecollision in time. The transmitter may choose to transmit the samemessage that was collided now in interval class B, within the same basictime interval as the collision, then select a new time slot in intervalclass A for the next transmission.

Transmitters keep the time slot they have selected as long as possible;they only choose a new time slot when necessary due to a messagecollision or a re-evaluation interval. Thus, there is a minimum amountof new time slot selection and thus message collisions due tosimultaneous identical time slot selection.

When a transmitter selects a time slot, it uses that time slot in thenext basic interval, unless the risk factor of the frame to transmit isabove a threshold, say four. In this case it may use the same basicinterval for transmission, provided that its new time slot selection isfor a time slot greater than the one used for transmission that hadinterference; or it may repeat the message transmission in intervalclass B.

A transmitters should send a message collision notification sub-messageif its determine that two transmitters have a message collision in atime slot, unless a similar message collision notification has alreadybeen sent. This sub-message identifies the time slot with the messagecollision, or at least one vehicle location.

The format of the message collision sub-message for time slotidentification is shown in the Table below:

TABLE 1 Message Collision Notification Using Time Slot Message CollisionNotification Sub-message w/Time Slot Size in Field Name bits Sub-messagetype 6 Message collision time slot 12 Number of detected collisions 4Receive signal power 4 Reserved 4 Total Bits in Sub-message 30

The format for Type 2 Message Collision Notification Sub-message isshown in the Table below:

TABLE 2 Message Collision Notification Using Location Message CollisionNotification Sub-message w/Location Size in Field Name bits Sub-messagetype 6 Message collision time slot 12 Target location: offset N-S 24Target location: offset E-W 24 Number of detected collisions 4 Receivesignal power 4 Reserved 4 Total Bits in Sub-message 78

The message collision time slot identifies the number of the time slotin which the message collision occurred. 12 bits permits up to 2046 timeslots. The values of zero and 2047 in this field are reserved. Thenumber of detected collisions identifies the number of basic timeintervals in which a message collision in this time slot is likely tohave occurred, for at least two of the same transmitters. A reasonabletime interval in which to count collisions is two seconds. A messagecollision notification sub-message should only be sent when at least twoconsecutive basic time intervals contain a probably collision in thesame time slot. If one or both the message transmitters are distant, areceiver might have some basic time intervals in which a collision isdetected and others where a message is received properly and nocollision is detected. Thus, a receiver might accumulate a number ofcounted message collisions before sending this sub-message. Four bitspermits number in the range of zero to 15 to be in this field. Thevalues of zero and one are reserved. The value of 15 means, “15 ormore.” The receive signal power field uses four bits to encode up to 14levels of received signal power. The values of zero and 15 are reserved.There is a reserved field of four bits. This field may be used in thefuture to identify additional information about the detected messagecollision. These bits should be set to zero. Various reserved values inthis sub-message may be defined in the future for testing or simulationuse.

Type 2 is the same as Type 1 except for the two Location fields. Thelocation fields are defined the same way as other location fields. Inthis sub-message type, this is a “directed message” to the vehicle atthe location in the sub-message. Note, as always, the location iseffective at the end of the basic time interval in which it istransmitted. This message notifies this ONE vehicle to change timeslots.

It is slightly more effective for a single vehicle to change time slotsrather than two vehicles changing time slots simultaneously. If twovehicles each self-select a new time slot in the same basic timeinterval, they may select the same time slot and still have messagecollision. Such a message collision is less likely if only a singlevehicle changes time slots.

It is likely that the vehicle that detected the message collision andsent the notification sub-message has been receiving ongoing messagesfrom one of the two vehicles participating in the message collision.Most likely that vehicle has been using the same time slot for itscommunications prior to the message that collided and the message thatcollided (although this is not necessarily the case). Therefore, thereis a good likelihood that the vehicle that detected and transmitted themessage collision notification knows the location of one of the twovehicles participating in the message collision. If this is the case,that vehicle should use a Type 2 notification instead of a Type 1. Itshould use the Type 2 message only once for any message collision. Ifthe message is not effective in eliminating the message collision inthat time slot the sender must revert to a Type 1 sub-message. Note thatif the vehicle detecting the message collision has been receivingregular messages from one of the two vehicle participating in themessage collision, it is likely that the signal from that vehicle isstronger and thus it is more likely that this first, Type 2,notification will get through successfully, than for the other vehicleparticipating in the message collision.

A vehicle receiving a Type 2 message collision notification must firstcheck if it is the intended vehicle—the target of the directed message.If it is NOT the target vehicle but IS transmitting in the identifiedtime slot it may optionally choose to select a new time slot, or not.The preferred embodiment is to wait one basic time interval, then selecta new time slot, as this minimizes the chances of a new messagecollision occurring.

Next a vehicle receiving a Type 2 message collision notification mustcheck that its last transmission was in the time slot identified in thesub-message. It is possible that it has already selected a new timeslot. If both the location matches and the time slot matches, it mustimmediately select a new time slot.

A common situation is when two vehicles approach each other from adistance. Each vehicle has chosen the same time slot as the othervehicle. At some distance, a third vehicle, located between the firsttwo vehicles, detects the message collision in this time slot. Thisthird vehicle most likely can identify one of the two vehicles, becausethey have both been transmitting in the same time slot repeatedly, andprior frames were likely received without error. The third vehicle isable and is required (in preferred embodiments) to send such a messagecollision notification sub-message, if it receives two or moreconsecutive message collisions in the same time slot.

There are three possible outcomes following the transmission of such amessage collision notification sub-message: (a), neither messagecolliding transmitter receives the notification; or (b) only one messagecolliding transmitter receives the notification (due to range or a Type2 sub-message); or (c) both message colliding transmitters receive themessage of Type 1. In the first (a) case, message collisions are likelyto continue, although not necessary, as the two vehicles could be incross traffic or now moving away from each other. This case is usuallydetected quickly by the same vehicle that sent the notification becauseany transmitter receiving such a valid notification for it mustimmediately choose a new time slot. If the message collision is detectedagain in the next basic time interval, a second message collisionnotification sub-message, which now must be Type 1, must be sent. Case(a) is relatively uncommon, because the third vehicle must have beenclose enough to both the transmitting vehicles to detect the collision,so at least one transmitter should be in range to receive thenotification sub-message. However, with message collision notificationsnow being sent in every basic time interval from at least one source,the message collisions will quickly resolve. In case (b), the onetransmitter that received the notification will choose a new time slotand the transmitter that did not receive the notification will continueto use its existing time slot. In case (c), both transmitters willchoose a new time slot. Note that in all three cases, message collisionsstop quickly.

Note that more than one vehicle may send a message collisionnotification sub-message in any one basic time interval. However, a V2Vtransceiver, if it hears another message collision notification in thecurrent basic time interval, may choose to not send a duplicatenotification. This decision is optional. In most cases, only a singlemessage collision notification sub-message will need to be sent. Thus,very little bandwidth is used by this method of rapidly detecting andcorrecting message collisions.

Transmitting vehicles should attempt to determine themselves if there isa message collision in the time slot they are using. Such determinationmay be technically difficult, however. That is why other vehicles, whichcan easily detect such interference, are an important part of thisembodiment protocol.

Selecting a New Time Slot

In one embodiment the target likelihood of any new time slot being freefrom interference is 99%. Transmitters may use a variety of algorithmsto achieve this target. Note that if two consecutive attempts need to bemade using these odds, then there is a 99.99% of success (no messagecollision after two attempts). For three consecutive attempts thefailure rate is only one out of 100,000. In practice the odds are evenbetter. First, high priority frames are retried in the same basic timeinterval, rather than waiting for the next time interval. Second, thealgorithm may adjust to use less “weight” and therefore more time slotsbecome statistically available.

Although some people might object to a safety system with a failure rateof “one in 100,000,” this low rate of first-time time slot acquisitionfailure is completely legible compared to other reasons that a V2Vsystem will be unable to prevent a collision. For example, not allvehicles are equipped. As a second example, not all drivers or vehicleswill take evasive action, even if warned. As a third example, somewherebetween 20% and 50% of accidents are not avoidable even with aconceptually perfect V2V system. As a fourth example, a sub-second delayin acquiring a new time slot will often still allow sufficient time forcommunication and avoidance.

Note, also, that the target percentage success rate of first time slotacquisition is easily raised to 99.9%, or higher.

Note also, that by using regular clocking, instead of half clocking,1600 to 2000 time slots become available. This is a very large number ofvehicles “in range” to need to be communicating. After all, the onlyvehicle one really needs to communicate with is one that is close enoughto possibly collide with one. If there are more than 100 (or some otherpredetermined limit) vehicles in range, the transmit power should bereduced (claim).

The advantage of using a relatively low first-time new time slotacquisition percentage of 99% is that it significantly clumps regularframes down near frame one. This leaves a large fraction of the basictime interval (0.1 sec) for low-priority, “convenience” messages, whichuse Area B, which might include audio or video information.

In one embodiment, all such convenience, low priority messages are heldoff for the next time slot following any time slot in which there is acollision in an interval class A or interval class C frame. Time slotcollisions in interval class A and C combined should be one per minute,maximum.

Note that message collisions between convenience, low priority don'tcount in the previous paragraph back-off. Message collisions forinterval class B are handled using existing CSMA/CA algorithms. The maindifference is that the size of interval class B changes dynamically.

Interval class B is defined simply as the space between the end ofinterval class A and the start of interval class C, computed as theworst case over the past five basic time intervals, plus a buffer zone(say, 25 time slots) extra at each end. Any of these metrics arepredefined constants, which may be different, or adjust dynamically.

Typically, the number of simultaneous interval class C transmitters willbe the number of emergency vehicles within range. This means that therewill not be very many interval class C messages sent each basic timeinterval. Management of the expansion of interval class C and theadjustment of the weighting for new time slot acquisition in intervalclass C is the same as interval class A, except interval class C takesprecedent. Thus, even in a case with hundreds of emergency vehicleswithin range, the system of this invention still works. It just meansthat interval class A broadcasts are reduce to make room for theemergency vehicle broadcasts. This is a giant improvement on currentproposed V2V systems (claim).

One embodiment uses the following algorithm to determine which new timeslot to use.

Step One. Determine frame type for message as interval class A, B, or C.

Step Two. Determine risk factor of the message.

Step Three. Identify all available time slots for interval class Amessages. (Algorithm for interval class C is similar.) Number theseconsecutively starting at 1. Note that these “available” time slotnumbers are NOT the same as the actual time slot numbers. The availabletime slot number we identify as n. An example is shown in the Tablebelow.

TABLE 3 Time slot Allocation Example Example Time Slot AllocationAvailable Actual Time slot No In Use? Number = n 1 yes — 2 yes — 3 no 14 no 2 5 yes — 6 no 3 7 no 4

Step Four. A constant k is determined based on bandwidth available andmessage risk factor. More discussion on k is below.

Step Five. A “time slot selection weight,” or w, is calculated from thefollowing formula: w=[EXP(−n/k)]/(k−1), for each n. This w representsapproximately the chance that this available time slot n will be used. Asample result of the first 20 n, for k=11 is shown in the table below.Note that the sum of these weights for the first 20 n is about 0.88.

TABLE 4 Time Slot Weighting Example Calculation of Weight = w k = 6.0Weight = Aggregate Available Number = n w Weight 1 0.141080 0.141080 20.119422 0.260502 3 0.101088 0.361591 4 0.085570 0.447160 5 0.0724330.519593 6 0.061313 0.580906 7 0.051901 0.632807 8 0.043933 0.676740 90.037188 0.713928 10 0.031479 0.745407 11 0.026647 0.772054 12 0.0225560.794610 13 0.019093 0.813703 14 0.016162 0.829865 15 0.013681 0.84354616 0.011581 0.855126 17 0.009803 0.864929 18 0.008298 0.873227 190.007024 0.880251 20 0.005946 0.886197

Step Six. Select or create a random or pseudo-random number between 0and 1.

Step Seven. Scan the table created in Step 5 (or, more efficiently, dothis step while computing step five) until the aggregate weight of eachn from 1 to the currently examined n is equal to or greater than therandom number selected in step six. Use this n.

Step Eight. Look up the selected n from step seven in the table (orequivalent processing) to find the corresponding actual time slot.

For example, using the above tables, suppose our random number is 0.351. . . . Traversing the table above, we find than n=3, because theaggregate weight at n=3 is greater than 0.351. From the prior table, wesee that the actual time slot corresponding to n=3 μs time slot 6. Timeslot 6 is our new time slot.

K should be adjusted to meet the target first time new time slotacquisition success rate, such as 99%.

Note that for the sample formula, the aggregate weight exceeds 1.0 atn=34. Thus, the selected n will always be in the range of 1 to 34, fork=11.

Note that the formula given is only one of possible embodiments. Otherformulas and algorithms may be used that meet the requirement of“weighted” slot number selection. For example, a linear weighted, ratherthan exponential weighted, could be used. Also, a flat weighted formulacould be used, where the number of time slots considered is a functionof available time slots.

An appropriate “linear weighted” formula is TS=INT(M*ABS(RAND( )+RAND()−1)+1), where M is the maximum number of available time slots (such asthe size of interval class A and optionally the first buffer zone) andthe functions have the usual Microsoft® Excel® (Microsoft® Office® 2010)definitions. The result of the inner formula is rounded to an integerstarting at one and the corresponding available time slot, TS, is theselected.

K may be increased for high-risk packets. K may be increased each timethere is a failure. That is, when a selected new time slot hasinterference. At k=100, using this formula, a probability of 50% isabout n=70. A probability of 100 is reached at about n=530. Using thisformula, with 800 time slots, k should not exceed 141.

One method of assigning k is that k=the number of used time slots, witha minimum k of 10, and a maximum of 141. However, adjusting k to meet atarget first time new time slot acquisition success rate, as previouslydiscussed, is preferred.

When utilization exceeds a set threshold, this weighing should bediscontinued and random selection, evenly weighted, over all unused timeslots should be used. Such a threshold may be 30%.

Time slots numbers over a certain threshold, such as 400, (out of 800)should be abandoned and a new one selected after five seconds. Thus, ifthere is a sudden burst of activity, or some vehicle selected a hightime slot number, these will tend to move back down toward the end ofthe Area. This maintains as a large as possible the Area B.

Windows that exceed one basic time interval, such as 0.5 seconds or fiveseconds, should be selected by each transmitter on random or arbitraryboundaries, to avoid clumping or motorboating issues.

It is worth doing a worst-case analysis. Peak freeway capacity is about30 vehicles per minute per lane. With two lanes of approaching traffic,plus the speed of the transmitting vehicle, up to about 120 vehicles perminute could be entering the transmitting vehicle's range. If time slotsare 25% utilized, then roughly one out of four vehicles entering therange will need a new time slot, or 30 vehicles per minute, or one everytwo seconds. With a basic time interval of 0.1 seconds, this means a newtime slot is needed within range every 20 basic time intervals. If 50time slots represents the equally-weighted chance of selecting aparticular new time slot, then the odds of two vehicles selecting thesame new time slot is approximately one in 20*50 or one in 1000, for afirst-try success rate of 99.9% In practice, the percent success ratewill be higher because the new time slots requirements arrive at arelatively consistent rate; they are not random. Also, at 25% time slotutilization (within interval class A), well more than 50 time slots areavailable.

Periodically, transmitters re-evaluate their time slot selection. Thisre-evaluation interval may be 30 seconds, one minute, 2 minutes, 3minutes, 5 minutes, 15 minutes, 30 minutes, 60 minutes, or another time.If, at the end of this re-evaluation interval, the transmitter were tomake a new time slot selection, and the chance that the new time slotwould be less than the current time slot (for interval class C: higherthan the current time slot) are 80% (or a different percentagethreshold) or higher, then the transmitter does indeed select a new timeslot, otherwise, the transmitter maintains its current time slot. Inthis way, time slots are slowly, but continually, moved back to the endsof the basic time interval, keeping interval class B as large aspossible. Simulations may be used to select optimal re-evaluationinterval and the percentage threshold, as well as parameters for theweighted time slot selection.

When a time slot is chosen by a first vehicle for interval class A, andthat slot has been used in the prior basic time interval for a class Bmethod, the first vehicle should find the next largest time slot afterthe first chosen time slot in what is currently interval class B that isopen—that is, has no transmission in the prior basic time interval. Thisextends the duration of interval class A and forces the vehicle thatsent the interval class B message to choose a new time to broadcast anysubsequent interval class B messages. This method avoids having a longmessage chain in interval class B “block” the duration growth of eitherinterval classes A or C. The process described above operates similarlyfor the boundary between interval classes B and C.

It is appropriate to leave a buffer zone of generally unused time slotsbetween the highest used time slot in interval class and the start ofinterval class B. A similar buffer applies below interval class C andinterval class B. An appropriate buffer size is 25 time slots. Theseslots may be used for emergencies, high priority messages, and for usewhen a V2V transceiver has two consecutive failed attempts at allocatingitself a non-message-colliding new time slot. The buffer time slots arenot available for use for interval class B messages.

In the event that a “message collision storm” is detected, theappropriate interval class (A or C) should be rapidly expanded. This maybe done, for example, by broadcasting core data messages in a number oftime slots in the prior interval class B zone. V2V transponders willimmediately receive such transmissions, then quickly adjusting to thereduced (or eliminated) interval class B.

Adjusting Interval Class Size

The size of interval classes A and C should be adjusted periodically,such as every basic time period. The size, in time slots, should bereduced if the interval is sparsely used and increased if the intervalis heavily used. A target usage might be 0.2%, 0.5%, 1%, 2%, 5%, 10%,15%, 25%, or in the range of 0.2% to 90%, or another percentage. Thensize should not be reduced below the highest numbered time slot (forinterval class C: the lowest numbered time slot) in use in that intervalclass. Interval classes A and C may be increased, in necessary, into thecurrent interval class B. However, a transponder selecting a time slotin the newly expanded interval class must first check that the time slotis not in use.

Interval Class B Message Timing

Messages sent in interval class B are generally lower priority thanmessages sent in class A or class C. However, any message that may besent in class A or class C may also be sent in interval class B. Thislatter case might happen, for example, when more high priority messagesneed to be sent than fit in the sender's class A or class C time slot;or the sender's current class A or class C time slot is in a state ofmessage collision.

Interval class B is not managed generally using time slots. Unlikeinterval classes A and C, messages in class B may be longer than onetime slot—sometimes, much longer. Interval class B is managed similarlyto traditional IEEE 802.11 (message) collision-domain management: thatis: CSMA/CA per 802.11, with modifications as discussed herein.

The first restriction on message timing in interval class B is thatfirst the window for interval class be must be determined every basictime interval. Interval class B is the time left over between intervalclasses A and C, plus the two buffer zones. In the most strictembodiment, interval class B begins in the time slot after the last usedtime slot for interval class A, plus the size of the buffer zone andends at the time slot before the first used time slot for interval classC, minus the buffer zone. However, another embodiment permits a smallamount of overlap. In this embodiment, the start of interval class B isat the time slot, below which lie 90% of the currently used intervalclass A time slots.

The second restriction on message timing in interval class B is that thesent message may not overlap with ANY currently used time slot ininterval classes A or C.

The third restriction on message timing in interval class B is that thesent message may not overlap with the period of time used for aninterval class B message sent in the prior basic time interval unlessthe “final” bit was set on that message. This restriction allows a longmessage chain, which must be sent as a series of interval class Bmessages, to generally use the same time window within the basic timeinterval for each message in the chain. Note we do not refer to thistiming as a “time slot” because it may not be aligned with a time slot,and it may take up more than one time slot.

The fourth restriction on message timing in interval class B is that thetypical lower priority messages in this class, such as courtesymessages, audio, and video, may be restricted to throttling back due tobandwidth management.

The fifth restriction on message timing in interval class B is that,when possible, a message chain in interval class B should attempt to usethe same timing for each message within the basic time interval, subjectto all the other restrictions.

A sixth restriction on message timing in interval class B is that, ifthe message is the start of a chain of messages, such as might happenwith a long audio or video message, that the initial time broadcast timebe selected so that the start of the message is some distance after thelast time slot used in interval class a and the end of the message willbe some distance from the first time slot used in interval class C. Thisallows extra space for the expansion of the duration of interval classesA and C during subsequent basic time intervals.

Receivers may, optionally, correct for Doppler shift caused by relativevehicle motion during the sync or training portion of the messagepreamble. Receivers may, optionally, attempt to correct for such Dopplershift by expecting a message in a time slot from a vehicle known to bemoving at an approximate relative speed. Thus, its “starting Dopplershift correction,” at the very start of the preamble, may be based onits expectation of the likelihood that the transmitting vehicle in thattime slot is the same transmitting vehicle that used the same time slotin one or more previous basic time intervals.

FIG. 2 shows one embodiment of a physical layer frame, using a 100 μsbasic time interval, 3 mbit/sec OFDM encoding with 24-bit symbols and a4 μs guard time. IEEE 802.11 defines this encoding the preamble, SIGNALfield, SERVICE field, FCS field, and Tail field. The 4 is guard time mayor may not be IEEE 801.11p compliant. The V2V message, as shown in FIG.2, is not an IP packet. The SERVICE and Tail fields are used to maintaincompatibility with existing radio designs and convolution encoders anddecoders. The SIGNAL field defines the data rate and encoding, asdefined by IEEE 802.11p. The FCS is defined as in IEEE 802.11p, althoughthe packet is not an IP packet. Bit scrambling and encoding is definedby IEEE 802.11p. Other embodiments are possible.

Note that the 4 μs guard time provides a working distance ofapproximately up to 1.2 km. As the nominal target range of an embodimentis 250 meters, this working distance provides a reasonable margin. Itmay be desirable to provide traffic signals with a range greater than250 meters so they may communicate with each other. The 4 μs guard timeallows them to use time slots for communication up to a distance of 1.2km. In general, traffic signals communicating in either direction withvehicles do not require more than a 250 meter range. Traffic signalscommunicating with other traffic signals are likely exchanging signaltiming information that is often more appropriate to place into intervalclass B messages. These messages use a longer guard time, and thus arange over 1.2 km is supported. Note that generally the maximum range ofa traffic signal needs to be no longer than one traffic signal cyclelength times the average speed of approaching traffic. For example, witha 80 second cycle time and an average speed of 30 mph, this distance is1.07 km. Generally, both safety needs and optimal traffic light cyclesimulation is effective using a shorter range.

FIG. 3 shows one embodiment of a frame using a 6 mbit/sec encoding rate,but otherwise the same as in FIG. 2, above. The V2V message length isnow 282 bits maximum.

Higher density encoding permits longer V2V messages within one timeslot.

V2V transmitters have several options available for sending messageslonger than a Type 0 message. One option is to use a higher densityencoding, and transmit in the transmitters established time slot. Asecond option is to send the message in the interval class B. A thirdoption, particularly for high priority messages and proxy messages, isto use an additional time slot. A fourth option is to use multiplesequential basic time intervals. Options may be combined.

In general V2V transmitters will have the ability to compute with highassurance the likelihood that a particular V2V receiver will be able toreliable receive a message. Power levels are largely known and generallyconsistent within a range. The signal-to-noise level of all receivedmessages may be measured. The location of each transmitter is generallyknown. Generally, mobile V2V receivers within a range should havecomparable radio performance, as that consistency is a key goal ofembodiments. As those trained in the art appreciate, this information,in aggregate, may be used to make an accurate estimate of thesignal-to-noise margin for any intended message recipient (location) forany given radio encoding.

Note that fixed V2V transceivers, such as traffic signals or locationcalibrators, may have significantly different radio performance thanvehicles. For example, their power level may be higher; their physicalantenna height may be higher; their antenna may have better line ofsight; their antennas may be directional; their chance of messagecollisions may be less; and other optimizations maybe available to thisequipment.

Vehicle Identification

The preferred embodiment for vehicle identification (vehicle ID) is thevehicle's location.

There are many ways to identify a vehicle. We do not list all possiblemethods here, but identify four classes of identity methodology, below.The first method is a physical serial number, which might be a serialnumber of the V2V transceiver, the VIN number of the vehicle, or thelicense plate number of the vehicle, or another unique assigned number.The second method is a communication address, such as a device MACaddress, or an internet IPv6 address. There are both static and dynamicways to assign such numbers. Other possible communication addressesinclude a cell phone number or a SIM module number. A third method is arandom number. A V2V transmitter selects a random number. This numbermay be fixed or updated from time to time. If a 128-bit number isselected (or even a 64-bit number) the odds of two vehicles choosing thesame number is negligibly small, and the harm done by such a duplicationis also negligibly small. A fourth method is to use the location of thevehicle for its identification. Two vehicles cannot be in the same placeat the same time. (In the case of two vehicles in a collision thatcreates this situation, both vehicles will be transmitting nearlyidentical information in two distinct time slots, so there is in fact anadvantage, not a problem, in such a rare situation.) Vehicle location,as core information should be in every message already. There is noreason to add unnecessary bits and unnecessary complexity and use upbandwidth unnecessary by adding additional, unnecessary vehicle ID. Whenan equipped vehicle is proxying for a non-equipped vehicle, it is“pretending” to be that vehicle, and thus using that vehicle's locationfor that vehicles ID is appropriate. Also, all proxy messages areidentified as proxy messages, so there is no argument that such proxyingconstitutes spoofing.

Thus, the strongly preferred method of vehicle identification is the useof vehicle location.

Note that this identification changes, typically, with each message fora moving vehicle. There is little reason to associate one message withanother message, as this system is designed around the doctrine thatmost messages are stand-alone units of information. However, since thebasic information in the message also includes velocity, it is a simplecalculation to associate a stream of messages with the same vehicle.Also, time slots used by vehicles to not change frequently, so themessages in the same time slot in contiguous basic time intervals have agood likelihood of being from the same vehicle.

Using vehicle location for vehicle ID allows “directed messages” to besent. That is, a V2V message may be sent to a specific recipient, the“target vehicle,” by using that vehicle's location (as computed where itwill be at the end of the same basic time interval as the directedmessage). If the V2V transmitter is unable to determine the targetvehicle's location, then it is inappropriate to use a vehicle locationfor this directed message. Directed messages may also be directed to avehicle type.

There is a substantial social advantage of using location for vehicleID. Privacy is a major social issue. As every vehicle is alreadyvisible, at a particular location, using this information for vehicle IDprovide neither less nor more private information than is alreadyavailable.

Message validity is a major issue with any V2V system. The situationtoday is that vehicles are neither hidden nor anonymous. They are large,visible, physical objects with a license plate for reliable ownershipidentification, should that information be needed. Beyond that, driversare largely anonymous entities on the road. Using vehicle location forvehicle ID provides exactly the same level of identification, anonymity,and credibility as what exists acceptably today.

Both vehicle based cameras and fixed cameras can easily compare vehiclephysical and visual identification with transmitted location as a way toseverely limit any hacking, spoofing, or other misuse of the V2V system.Limited transmission range limits remote hacking attacks.

Location and Velocity Coding

Transmitting location is a fundamental part of any V2V system. We havepreviously discussed that the preferred location of a vehicle is thecenter of the front (back, if backing up) of a vehicle. For a fixedobject (or a vehicle that might act as a fixed object in a collision,such as a vehicle protracting at an angle into a traffic lane), the mostlikely collision point is the preferred location. For parking spaces,the center of the marked parking space is the preferred location. Forintersections, the center of the intersection is the preferred location.For messages that need two locations, a preferred method is to send twoconsecutive sub-messages in the same time slot, with a beginninglocation and an end location, or use a sub-message that comprises twolocations. The method of using a sequence of locations maybe extended totransmit the corner points on any polygon shaped area. An alternativemethod is to send longer messages, or messages with more data encoded ata higher data rate.

Location may be encoded as an absolute geophysical location on thesurface of the earth, such as used by the GPS system. The preferredgeodetic system is the World Geodetic System 1984 (WGS84).

Power Management

14 different levels of transmit power are supported. Messages andalgorithms are defined to manage transmit power in order to maintainsufficient bandwidth as vehicle density changes and to maintainconsistency of range within a group. Power management is embodiments inrelated subject matter.

Passive Reflectors

The use of passive reflectors is a well-known method of extendingline-of-sight radio communication to non-line-of-sight paths.

On mountain roads, the V2V transmissions of some vehicles willfrequently be blocked by part of the mountain from being received at adistance by another transponder.

Passive reflectors may also be used in parking lots and parkingstructures. For example, they may allow V2V transceivers to communicatebetween concrete floors of a parking structure. The passive reflectorsmay be placed outside the structure or at the ends of access ramps. Suchintra-garage communication is valuable in counting vehicles, locatingempty spaces, billing, and other services.

Some embodiments use the transmit time of messages to compute distancebetween transponders, which then also be used for time basesynchronization and for detection of invalid transmissions. Passivereflectors, whether intentional or accidental, play a role, as theeffective radio path of transmissions may then no longer be thestraight-line path between two transponders or vehicles. Thus, it may bevaluable to know, or estimate, if a transmission has been reflected.This information may be used to alter the computation or use oftime-of-flight of transmissions.

Interval Class B and Courtesy Messages

A fundamental embodiment uses interval class B for lower prioritymessages. In particular, this includes messages with limited real-timevalue, and thus may be delayed, and non-safety related messages. Onecategory of interval class B messages is called “courtesy messages,”which are a form of notification from one vehicle to another. One suchexample is, “your brake lights are out.” Such courtesy messages may inthe form of pre-defined messages, where only a message type is required,or a text message, or an audio message, or other format.

Another example of interval class B messages is “social messages,” suchas, “would you like to go out with me?”

Priorities within interval class B, include, in order, highest tolowest:

-   -   Emergency vehicle messages    -   Overflow regular priority safety messages, including messages        collision warnings, and linking messages    -   Government authorized RSU messages    -   Invalid transmission, transponder or network error warnings    -   Lane map information    -   Short courtesy messages    -   Long courtesy messages, including chained messages    -   Social messages    -   Other messages

For a V2V network to be effective, it must maintain sufficient usablebandwidth that the most important information gets through. Thus, for apreferred embodiment, the available bandwidth of the network should bemeasured by V2V transmitters and used to throttle back less importanttransmissions. Such throttling may comprise increasing the time betweentransmissions. Such throttling may comprise using a higher threshold ofrisk for transmitting packets. Such throttling may comprise reducing thenumber of retransmitted messages. Such throttling may comprise limitingtransmissions to only safety related messages.

Bandwidth throttling generally sets a threshold for transmission ofinterval class B messages, using a predetermined priority order, such asthe above list.

Another means of throttling is to limit message broadcasts in intervalclasses A and C.

Another means of throttling is to reduce transmit power of transpondersso as to reduce the effective range.

A suitable window for measuring available bandwidth is one second. Asuitable threshold to start throttling is 33% bandwidth utilization. Asuitable threshold for more severe throttling is 50% bandwidthutilization.

In one embodiment an audio message is included in one or more messages.If the data portion of one message is insufficient to hold the digitizedvoice message, additional messages are used in a “message chain.” Theindividual messages in the chain may be number. However, preferredembodiment is to use the vehicle location as an identifier for thesource of the message. The receiving vehicle(s) then use the location toidentify that the messages in the chain come from the same source, eventhought location data itself is changing each message. Messages in thechain may be lost, but they will always be received in order, becausethere is no routing. Thus, the only requirement is a single bit is toindicate if a message in a chain has more messages following, or if itis the “last message” in the chain. The bit is called the “final” bitand it is included in every message header. If the bit is set, thismessage (which may be the only message) is complete and receivers mayprocess it as a logical unit. Once all audio messages in a chain arereceived, the receiving vehicle(s) presents the reconstructed audiostream to the occupants in one of two modes: (a) either playing themessage immediately, or (b) notifying the driver that there is an audiomessage waiting, allowing an occupant to select for playback. Thisfeature is useful for (a) safety warnings, (b) courtesy messages, and(c) social interaction. Note that the actual real time to send the audiomessage chain is often much less than the length of record or playbacktime for that audio clip. Note that messages in a chain of audiomessages may pause during transmission, as a bandwidth preservationmeasure or for other reasons. Such a pause may delay completetransmission of an audio message chain, but it does not inherently abortthe chain.

Message Collision Notification

The broadcast system in the preferred embodiments of this invention donot obviously support acknowledgments (ACK) or negative acknowledgements(NAK) on a per-packet or per-frame basis as many existing IP protocols.

It is generally considered difficult for a transmitter to detect messagecollisions in its own broadcast time, although this is not impossible.

Therefore, preferred embodiments provide means to send message collisionnotifications. The most important of these is message collisionnotification. Note that it is important to distinguish between “vehiclecollisions” which are physical collisions resulting in property damageand often personal injury from “message collisions,” which is a commonwireless term of the art meaning that two transmitters are attempting tosend at the same or overlapping time. Which collision is meant in thisdocument should be clear from context. In most cases, vehiclescollisions are called, simply, “collisions,” whereas message collisionsare usually so identified.

There are two sources of message collision. One source is when twovehicles, not in range of each other, are each using the same time slot.Then, when the come into range, there will be message collisions in thattime slot. The second source is when a time slot is empty, and twovehicles within range both decide for the same initial basic timeinterval to use the same, previously empty time slot.

Let is first consider the first case. A first vehicle may be using timeslot seven and a second vehicle may be using time slot seven. They arenot in range of each other, but as they approach they both come intorange of a third vehicle. The third vehicle is able to detect themessage collision in time slot seven, although vehicles close to thefirst vehicle and vehicles close to the second vehicle do not detectcollisions in this time slot and are able to receive properly themessages from vehicles one and two in this time slot.

The third vehicle should send out a message collision notification. Itdoes this with a message collision warning sub-message type 3 or 4. Itnormally sends this notification message in it own time slot. It is easyto identify the vehicles that need to receive this message because theidentification is by time slot, not by vehicle ID.

When a vehicle receives a warning that the time slot it is using is incollision, it should immediately select a new time slot.

Note that in the above scenario, the third vehicle sends the messagecollision notification very shortly after both vehicles one and two comeinto its range. Most likely at least one of these two vehicles is at themost distant end of valid range. Therefore, when the message collisionwarning message is sent, it may be likely that only one of vehicle oneor vehicle two is able to receive the warning. Thus, only one of vehicleone or vehicle two will pick a new time slot. This solves the problem,as the other vehicle then continues to use its existing time slot seven.On the other hand, perhaps both vehicle one and vehicle two receive thewarning message and choose a new time slot. This also solves theproblem. Thus, it is not critical which vehicle, or both vehicles,receive and respond to the message collision notification.

If neither vehicle one nor vehicle two is able to receive the messagecollision warning, then they will both continue to broadcast in timeseven. The third vehicle will detect this and will again send out thenotification. At this time, at least one of the vehicle one or vehicletwo, or both, are closer to vehicle three and are more likely to receivethe message. Also, it is likely that by now additional vehicles are inboth the range of vehicle one and vehicle two and they also are sendingmessage collisions notifications. Since these notifications normallyoccur at the outermost reaches of range, immediate receipt and responseis not critical. A few notification messages to achieve the necessaryresult are tolerable and represents no significant loss of safetymessages.

Receiving vehicles need to be able to distinguish between weaktransmissions, that may therefore have errors and fail to validate withthe FCS, and messages that are corrupted due to message collisions. Suchdiscrimination is not normally a problem for a receiving radio. Thereare several known methods of discrimination. Weak signal strength is anindication of excessive distance, rather than message collision. Failureto sync, high receive signal strength, a very high error rate, invalidsymbol timings, and frames that start early and end late are allindications of message collisions. Two antennas and two radios on avehicle is a very good way to distinguish between weak transmissions andmessage collisions. Say the antennas are three meters apart. If there isonly one transmission, they will receive almost exactly the sameinformation in a frame, even it fails to pass a FCS validity test. Onthe other hand, if two frames are being received from oppositedirections, the radio signal at the two antennas will be shifted byapproximately nine nanoseconds. Typically, this means that the decodeddata at the two antennas will be significantly different. Generally, ahigh error rate in conjunction with reasonable signal strength is anindication of a message collision. Another indication is that as thesignal strength in that particular time slot increase (as the distanceto the transmitting vehicle decreases), and the error rate in the framegoes up instead of down, that is also an indication of a messagecollision. If the signal strength in a time slot is weak, but as thesignal strength increases the error rate in the frame goes down, that isan indication of merely a distant transmitter, not a message collision.

A V2V transceiver must reach a “message collision threshold” number,such a two, message-colliding transmissions in the same time slot incontiguous basic time intervals before it sends a message collisionnotification. This means that a few isolated cases of apparent messagecollisions will not result in a message collision notification beingsent.

V2V transceivers are encouraged to implement their own means ofdetecting message collisions in their transmitting time slot. Forexample, they may use a second antenna and radio. Another way to detectcollision is to skip a basic time interval and see if anyone else istransmitting in that time slot. Another way to detect message collisionsis to see if anybody else is transmitting in the same time slot afteryou stop transmitting. This is particularly effective when a shortmessage is sent.

A useful hybrid of these means is to occasionally, such as once persecond, send the shortest possible message, such as only core data, thenlisten after transmission stops. If the basic time interval within a onesecond window is picked randomly, there is a very high chance that amessage collision will be detected early. Using this means, only asingle radio and single antenna are needed. Note that such pauses do notnegate the definition of broadcasting in “all basic time intervals.”

Table 5 below shows the two sub-message formats for message collisionwarning sub-messages. If the location of at least one of the messagecolliding transmitters is known, the message type 4 which includes thatlocation is preferred, as it is less likely that one V2V transponderselecting a new time slot will create a new message collision that iftwo V2V transponders both select a new time simultaneously. All of thefields in these two sub-message types are discussed elsewhere herein.Four bits are reserved in the last field.

Receive signal power level uses the same 14-level scale as transmitpower. However, the units are different. This scale goes from binary0001 to binary 1110 where each step represents an approximately equallyspaced receive power level using a logarithmic (db) scale. The value of0001 is set to the lowest typical usable receive power level and thevalue of 1110 is set to the highest typical expected receive powerlevel. A value of zero in the sub-message means that the receive powerlevel is not included in the sub-message. The power level field shouldbe the average power received during the applicable time slot.

TABLE 5 Message Collision Warning Message Formats Size in Field Namebits Format Message Collision Warning - Time slot Format Sub-messagetype 6 value = 3 Message collision time slot 12 time slot no Number ofdetected collisions 4 integer Receive signal power 4 power levelReserved 4 subtotal bits in sub-message 30 Message Collision Warning -Location format Sub-message type 6 value = 4 Message collision time slot12 time slot no Target location: offset N-S 24 location Target location:offset E-W 24 location Number of detected collisions 4 integer Receivesignal power 4 power level Reserved 4 subtotal bits in sub-message 78

Message Formats

A preferred embodiment uses most of IEEE 801.11p for the physical and aportion of the data-link layer definition. In particular a frame formatfor a 100 μs time slot is shown in FIGS. 2 and 3. All frames in theseembodiments use the SIGNAL, SERVICE, TAIL and FCS fields substantiallyas defined in 802.11p. The SIGNAL field includes modulation and rateinformation that describes how the subsequent 802.11 DATA field isencoded. There are reserved, currently unused, bits in the SIGNAL field.The 802.11 DATA field is required to be an integer number of symbols. Atour preferred most reliable data encoding and rate of 3 mbit/sec, usingthe preferred 100 μs time slot and a 4 μs guard at the end of each timeslot, the 802.11 DATA field is 56 μs, or 7 symbols, or 168 bits. TheOFDM convolution decoder requires a portion of the 16-bit SERVICE andthe 6-bit TAIL fields to work optimally. We include a Frame CheckSequence, or FCS field of 32-bits, as described in 802.11 to provide ahigh level of validation of frame data. This leaves, at this data rateand time slot, 114 bits for the V2V message.

V2V messages, in our preferred embodiment, do not use internet protocol.That is they are free from MAC addresses and IP addresses. A primaryfunction of MAC addresses is to provide a unique hardware identifier forsource and destination of frames. Our preferred protocol does notrequire MAC addresses because the vehicle location is its uniquetransmit identifier, and all messages are broadcast, so no destinationidentifier is normally used. For directed messages, the message containsinformation, such as vehicle class, or location ID, as the directedtarget for that particular message. Our preferred embodiment does notuse IP addresses because there is no routing. Forwarding is discussedelsewhere in this document. However, forwarding does not functionsimilarly to routing.

Thus, our message formats are free of the IP frame header, and all thebits associated with IP headers. Compatibility with IP networks isachieved in at least four ways. First, the V2V spectrum in the US andmany other countries is reserved for V2V functionality, thus withinthese reserved bands there should be no general use of wireless IPpackets. Second, all V2V messages are easily encapsulated as the payloadfor IP packets, and thus may readily be moved over an IP network. Third,V2V messages in time interval B may easily incorporate IP packets withinthe V2V data area, should it be appropriate to ever move IP packets overthis preferred V2V network. Fourth, unused bits in the SERVICE field mayeasily be used to distinguish, should this feature be desired, betweenour preferred V2V message protocol and IP packets sent in the samespectrum.

V2V messages, in our preferred embodiment, comprise two basic formats.The first format is referred to as a Type 0 message. It is the mostbasic message within this embodiment. It comprises all of the key fieldsto implement a fully functional V2V system, as described herein. A Type0 message is 114 bits, fitting neatly in the preferred time slot anddata rate. The second format provides for vast number of differentsub-messages. In this format, each V2V message comprises one or moresub-messages, permitting a mix-and-match capability of varying messagepayloads, priorities, and lengths. When sub-messages are used, the V2Vmessage header comprises two fields that describe the operating V2Vprotocol revision level and the message length. All sub-messagescomprise a 6-bit sub-message type field that describes both the formatand length of that sub-message. One or more sub-messages are consecutivewithin the message. Since sub-messages are all fixed length, asdetermined by the sub-message type, the message length field is used todetermine if there are more sub-messages following the first andsubsequent sub-messages.

FIG. 11 shows some key message and sub-message fields, which we nowdiscuss. The V2V revision level is 4-bits. If set to zero, thisindicates a Type 0 message. Any value other than zero indicates amessage containing sub-messages, with the value indicating theparticular V2V revision level of the V2V transmitter. Initially, thisvalue is one.

The Flags field comprises four, 1-bit flags. These are: Emergency,Final, Forward, and Proxy, in positions B0 through B3 respectively. TheEmergency Flag, if set to one, indicates the transmitter is an emergencyvehicle; otherwise it is set to zero. The Final Flag, if set to one,indicates that this frame is the final frame in a chained series offrames; most V2V messages are in a single frame, and thus the Final Flagis normally set to one. If the Final Flag is set to zero, it means thatthe message is incomplete, and should be interpreted after future framesand been received and appended; this is used for chained messages.Chained messages permit the transmission of large messages that do notfit within one frame, such as audio and video. Vehicle ID is used toidentify which frames should be chained to build a complete, chainedmessage. The Forward Flag, if set to one, indicates that this message isbeing forwarded; that it, the current transmitter is not the originaltransmitter of the message. Originators of V2V messages set the ForwardFlag to zero. The Proxy Flag, if set to one, indicates that this messageis being sent by a proxy transmitter for a subject vehicle, where themessage concerns the subject vehicle.

The Message Size field indicates the total length of the message insymbols. At the most reliable encoding, at 3 mbit/sec, symbols are24-bits each. At other encodings, symbols are longer. Pad bits are usedat the end of the last sub-message to make up an integer number ofsymbols. All sub-messages are at least 24-bits, and 24-bit nullsub-messages may be used as padding, when 24 or more padding bits areneeded. Coding the message length in symbols is more bit-efficient thatusing other units, such as bytes, or 32-bit words. The Message Sizefield is not used for Type 0 messages.

At 3 mbit/sec, using 100 μs time slots, the message length is fixed at114 bits. Longer messages are sent by at least four methods. First,faster encoding rates may be used. For example, as shown in FIG. 3, at 6mbit/sec, 282 bits are available. Data rates up to 27 Mbit/sec aresupported by the Standard. Second, interval class B may be used to sendmuch longer frames. Third, messages may be broken up in to smallermessages, with each component sent in a different basic time interval.Fourth, additional time slots may be used. These methods may becombined. The choice of method depends in part on the priority of themessage(s) being sent, as well as other factors, such as availablebandwidth and the likely ability of the intended recipients to decodereliably a faster data rate.

Message sizes of zero and 255 are invalid. If the carrier of the messagedoes not use wireless, then the symbol size is assumed to be 24-bits forthe purpose of this field.

Every sub-message begins with a six-bit Sub-message Type field. Seebelow for a list of defined sub-message types. Each sub-message typeindicates specific fixed-length fields in the sub-message, and thus thesub-message length is fixed for each sub-message type. A few genericsub-message types are defined permitting variable and future-definedcontents. Such generic sub-message types may be used to encode, forexample, IP packets, audio, and video information.

Final Risk is a 4-bit field that encodes an integer value of zerothrough 15. Final risk is explained elsewhere in this document. Definedvalues are shown in FIG. 8. Note that a value of zero means, “risk valuenot defined in this message.” A value of two means, “zero or minimalrisk currently identified.” Note that this final risk value is a fieldin nearly every message; this is an important element of mostembodiments.

The 6-bit Vehicle Type field identifies the type of the vehicletransmitting. See below for a table of defined vehicle types. If a proxyis sending for a subject vehicle, then this field defines the vehicletype of the subject vehicle. If a message is forwarded, the vehicle typefield is the vehicle type of the original message. The vehicle type isimportant for several reasons. First, just common sense, it is importantto know WHAT is moving—a car, truck, bicycle, pedestrian, or deer, forexample. Or not moving, for example, a traffic signal, bridge abutment,detour diverter, location calibrator, or dead end. Second, the VehicleType field encodes the maximum size of the vehicle. Since thetransmitted location of a vehicle is the front center of the vehicle,the maximum size is important in order to know the maximum bounds of thevehicle. The Vehicle Type MUST BE at least as large as the actualvehicle. Third, the Vehicle Type field encodes the maximum weight of thevehicle. The Vehicle Type MUST BE at least as heavy as the actualvehicle. The Vehicle Type field is an efficient way to encode 99% of thecritical information about a vehicle with respect to V2V collisionprevention. Other message types may be used to accurately describe avehicle, such as its number of axels, exact dimensions, exact weight, ordangerous cargo. Vehicles such as bicycles, pedestrians, and animalsshould generally include a vehicle type encoding that most accuratelydescribes the characteristics of that vehicle. For example, a runnerpushing a stroller may chose to be coded a “bicycle,” because thatencoding more closely represents the behavior than “pedestrian.” Asanother example, a motorcycle pulling a trailer may decide to encode as“small vehicle,” rather than “motorcycle.” An embodiment of the VehicleType coding is shown in a Table 1, below. Exact dimensions and weightsof the vehicle types in the table may be determined from publishedtables or Standards, or may be based on statistical distribution. Forexample, “small size” may be the smallest 10% of motor vehicle on theroad. “Large size” may be the largest 20% of private cars, pickups, SUVsand vans, on the road.

TABLE 6 Vehicle Type Coding Code Vehicle Type value no vehicle type inmessage 0 fixed road-side, collision n/a 1 fixed center of intersection2 fixed center of intersection w/signals 3 fixed location calibrator 4fixed road-side, collision possible 5 temporary road-side, normal 6temporary road-side, abnormal 7 road-side, other 8 private car, pickup,or van, typ size 9 private vehicle, small size 10 private car, pickup,or van, large 11 motorcycle 12 limousine -- long or stretch 13commercial pickup or van, large 14 medium size commercial truck 15stopped medium size delivery vehicle 16 semi tractor only 17 semi, onetrailer 18 semi, two trailers 19 semi, three trailers 20 semi, oversizewidth 21 short bus 22 full-size bus or RV 23 emergency vehicle, small ormedium 24 emergency vehicle, large 25 farm vehicle 26 oversize vehicle27 in roadway still equipment 28 in roadway still obstruction or barrier29 in roadway debris 30 accident 31 bicyclist 32 bicyclist, double ortrailer 33 pedestrian, upright 34 pedestrian, high speed, e.g. runner 35handicapped person, e.g. wheelchair 36 person down on roadway 37 crowdon roadway 38 event on roadway, e.g. crafts fair 39 domestic animal,e.g. guide dog 40 non-domestic animal, e.g. livestock 41 wild animal,e.g. deer 42 other tiny (size TBD) 43 other small (size TBD) 44 othermedium (size TBD) 45 other large (size TBD) 46 other very large (sizeTBD) 47 other oversize (size TBD) 48 reserved 49-62 unknown vehicle type63

The purpose of the vehicle type code is not to create a comprehensivelist of vehicle types, but rather to provide approximate size andcapabilities of vehicles, people and objects. The different types arespecified when there are important attributes for quick recognition orthat should change a driver's (or automatic) response, based on vehicletype. If a V2V transmitter is unsure of a vehicle code or vehicle size,it should broadcast the next larger size. Detailed size limits will bedetermined later.

A key advantage of providing vehicle type is the type defines theapproximate size of the vehicle so that receivers of the message canmake reasonable, conservative estimates of where the four corner of thevehicle are based on a single location, such as the front center of thevehicle.

A second advantage of providing vehicle type is that audio messages todrivers are particularly effective. For example, “avoid pedestrianahead,” or “caution: bicycle on right,” or, “slow farm equipment ahead,”or “debris in lane ahead.” In some cases the vehicle type will determinethe level of automatic response appropriate. For example, avoiding apedestrian is extremely important, even at the risk of a minor collisionwith another similar-sized vehicle. As another example, a car shouldavoid a collision with a semi, even if it means emergency braking whichmight result in a rear-end impact. As another example, debris in anylane ahead may cause drivers to swerve at the last second. Therefore, adefensive measure is to position and maintain the message receivingvehicle so that there is no front-to-back overlap with vehicles in thelanes left and right, thus avoiding a sideswipe in the case of a suddenswerve by one of those vehicles. As another example, consider that fullyloaded semi tractor-trailers have a typical stopping distancesignificantly longer than automobiles. Thus, either a driver or anautomatic system should take into account the probable stopping distanceof a semi. As another example, consider an animal or wheelchair in anintersection, where the view of that is blocked to a driver. That drivermay honk or try to move around a view-blocking vehicle that is stoppedfor no apparent reason. Knowledge of the hidden animal or wheelchairavoids frustration, a possible horn honk or unnecessary courtesymessage, improper warning transmission, or dangerous go-around maneuver.

An excessive number of defined vehicle types are inappropriate as addingunnecessary complexity, inconsistency, and confusion of purpose into aV2V system.

Note that the case of a vehicle moving slowly, the speed of traffic,high-speed or stopped is handle by the velocity information in thepacket. Thus, there is no reason to code a stopped emergency vehicledifferently from a moving emergency vehicle in the vehicle type field.Stopped delivery vehicles are coded differently because the typicalbehavior of a stopped delivery vehicle is different than most otherstopped vehicles. Here, code 5 means a vehicle making a delivery, suchas pulled to the right of a traffic lane, with blinkers on. This code isnot for a “normal stop,” such as at a stop sign.

The 4-bit Collision Type field encodes sixteen possible values. Theseare defined in FIG. 12. A value of zero means that no collision type isincluded in this message. A value of 15 means that the collision type isunknown. Over 95% of collisions are one of four types: rear-ender,side-swipe, side-impact, or head-on. Thus, this four-bit field iscontained in nearly every message and covers the vast majority ofcollision types. There are also defined values for pedestrian or bicyclecollisions, and single-vehicle collisions. More detailed informationabout a collision is available in another sub-message type. Values of 11through 14 are reserved.

Note that the final risk transmitted in most messages is the generalrisk for the entire range of the transmitting vehicle. It is up toindividual vehicles, generally, to assess their own role in causing orpreventing a collision. If a transmitter has clear information aboutwhich vehicle is the cause (or primary cause) of a potential collision,it may proxy that particular vehicle, using that vehicle's location,speed and direction. Any V2V transponder receiving this information willcompare the location speed and direction of the subject vehicle withit's own location, speed and direction. Along with the Collision Typefield it will be quite clear to the vehicle that it is about to be hit,from which direction, and by what. If, alternatively, a vehicle notesfrom a message that its own location is being transmitted in a proxy,along with a collision type and a non-low risk, then it is the presumedcause of the potential collision and should change its behaviorimmediately.

Because a number of collisions are, “no fault,” or “shared fault,” orare multi-vehicle collisions, the use of a generalized risk value andcollision type for a range is the most broadly useful embodiment. Asdiscussed above, there is specificity to identify the causal vehicle andthe non-causal, most-at-risk vehicle, with no loss of generality. As aspecific example, suppose two vehicles were about to sideswipe eachother. Independent of the fault or cause, a V2V transponder aware ofthis risk is able to transmit two proxy messages, one for each of thetwo vehicles, with the risk set to a high value and the collision typeas “sideswipe.” The transmitter may optionally use two additional timeslots for these messages, one for each proxy, if the risk is highenough. Thus, within a single basic time interval, any V2V receiverwithin range, which might be in one, or both, or none of theto-be-involved vehicles will receive two vehicle locations, directionand speeds, along with risk and collision type. Thus each V2V receiverwithin range will have knowledge of the impending collision without anyreliance on its own sensors, other than it's own, potentially crude,location. Note that the transmitting vehicle will be using its ownlocation coordinates, suitably offset as discussed herein, for bothproxies. Thus, there will be zero relative location error between thetwo proxy messages. If one of the two involved vehicles, for example,were to have a relatively large location error at the moment, and thatlocation error is contributing to it's lack of knowledge about theimpending collision, the receipt of the two proxy messages will besufficient to inform that vehicle that it is about to be involved in acollision and needs to take immediate corrective action. Note that allof the necessary information fits within one or two Type 0 messages, andthus may be sent highly compactly and reliably.

A 4-bit Risk Source Field comprises four, 1-bit flags. The four flagsare: Vehicle, Local Conditions, Traffic, and Location History, on bitsB0 through B3, respectively. When a flag is set to a value of one, itmeans that the final risk value comprises a significant portion fromthat source. A Vehicle flag means that the source of the final riskcomprises the real-time behavior of one or more vehicles. This is themost common and obvious source of vehicle collisions. Local Conditionscomprises road conditions and weather conditions. A slippery roadsurface, a detour, or thick fog, are examples of local conditions. TheTraffic flag refers to overall traffic, rather than to one or twospecific vehicle behaviors. Stop and go traffic is an example. LocationHistory flag refers to a particular location, such as an intersection ormountain road as having a history of accidents or close calls.

The exact selection of one or more Risk Source flags is up to eachimplementation of a V2V transponder. One possible implementation is asfollows: A single flag is selected if no other source contributes morethan one third to the final risk value. Two flags are selected if theremaining two sources each contribute less than ¼ to the final riskvalue. All four flags are selected if they each contribute at least 20%to the final risk value.

Understanding risk source is valuable to both a human driver and anautomatic collision avoidance system in deciding what defensivemechanisms to implement. In particular, warnings, such as audio warningsto a driver, are often based on the risk source, rather than potentialcollision type.

Another advantage of communicating primary risk source is that itstrongly supports audio warnings to a driver. For example, “watchtraffic,” or “dangerous driver approaching from right,” or “unsaferoadway,” or “dangerous intersection ahead.”

While it mean seem unnecessary to inform a driver about “poorvisibility,” or “heavy traffic,” many sources are in fact not obvious todrivers, such as an icy spot in a road, or an intersection with ahistory of bicycle collisions. Poor visibility may become a risk sourcequite quickly, such as being blinded by high-beams.

Sharing location history sub-messages are low priority. These are sentin interval class B.

Continuing with the Fields in FIG. 11, we now see in Rows 9 and 10 twoLocation Fields. Location coding as here described applies to all 24-bitlocation fields. As discussed elsewhere herein, vehicle location iscoded as a hybrid of both geographical latitude and longitude gridpoints (on a ½° grid), plus surface-of-the-earth (not straight line)offsets in distance. The offsets are 24-bit signed integers that encodethe number of cm from the nearest (or almost nearest) grid point on aone-half degree latitude or longitude grid line. The range of thesefields is approximately ±83.89 km. The worst-case spacing between anytwo adjacent grid points on a single latitude or longitude line isapproximately 56 km. The two Location Fields generally encode thecurrent distance of the subject vehicle to the nearest grid point.Positive refers to North or East. Negative refers to South or West.Measurement is on the surface of the ideal earth model, using the samegeodesy model of the earth as used by the GPS system, currently WGS 84.Compass headings are absolute, not magnetic.

Generally, each V2V transmitter selects the nearest grid point to use asits location reference. There is no chance of confusion in the V2Vreceiver as to which grid point has been chosen by a transmitter, due tothe spacing of grid points in the tens of km range. V2V receivers mustbe able to process V2V messages using different grid reference points.The grid consists of the intersection points of 720 longitude lines with179 latitude lines (89.5° S to 89.5° N), plus the two poles, or1,381,882 grid points.

There will be boundary zones, where some vehicles are using one gridpoint and other vehicles are using another grid point, as theirreference. This should not generally be a problem, as changing gridpoints should not generate any computation, alignment or roundingerrors. Nonetheless, it is desirable to have all vehicles in range usingthe same grid reference point. Therefore, vehicles should continue touse the same grid reference point they were using previously, until thefollowing occurs: (a) another grid point is closer, or less than apredetermined distance; and (b) a majority of vehicles in range areusing a different grid reference point; and (c) there are no known risksat the moment. In general, this will cause groups of vehicles to switchgrid reference points as a group. In the example case of a boundarywithin and near the edge of an isolated town, generally the residentvehicles in the town will be using a single grid reference point. Anappropriate overlap distance where a non-nearest grid point may be usedis ten percent of the grid point spacing.

The Angle of Travel Field is 10-bit unsigned integer in the range of 0to 1023. This integer represents the 360° compass heading, using trueNorth, divided into 1024 equal parts, starting from zero. Eachconsecutive integer represents 360/1024 degrees. The V2V transceiverchooses the nearest heading for this field.

The Speed of Travel Field is an unsigned integer that represents theforward speed of the subject vehicle in units of 0.1 m/s. (about 0.2mph), with an offset of 10 m/s. Thus the range of this field is −10 m/s(field value of 0) to +92.3 m/s (field value of 1023). A stopped vehicleuses a field value of 100. Speeds in the range of −10 m/s to −0.1 m/srepresent a vehicle backing up. For a vehicle backing up at a speedgreater than 10 m/s, the vehicle should be “turned around,” that is, thereference point should be moved to the center of the back of the vehicleand the speed now encoded as positive. This field has an approximaterange of −22 mph to 206 mph.

Lane Designation is an 8-bit field that encodes one of approximately 254defined lane types. A value of zero means that the message does notcontain a lane type. A value of 255 means the lane type is unknown.Assigned values for one embodiment are shown below in Table 7—LaneDesignation Field.

TABLE 7 Lane Designation Field Lane Type Value lane information not inmessage 0 Indeterminate - not intersection 1 Indeterminate -intersection 2 Intersection - shared 3 Intersection - reserved 4 Turningright at intersection 5 Turing left at intersection 6 changing lanesleftward 7 changing lanes rightward 8 merging lanes leftward 9 merginglanes rightward 10 Lane 1 11 Lane 2 12 Lane 3 13 Lane 4 14 Lane 5 15Lane 6 16 Lane 7 17 Left shoulder 18 Right shoulder 19 Center sharedleft-turn lane 20 Left-side off-road 20 Left-side off-road 21 Right-sideoff-road 22 Merging lane on left 23 Merging lane on right 24 Right lanemust exit 25 Left lane must exit 26 Shared merge on-off lane 27 Shortmerge 28 Lane or road classification change 29 Left-turn lane 1 30Left-turn lane 2 31 Left-turn lane 3 32 Right turn lane (farthest right)33 Right-turn lane (2nd from right) 34 Right-turn lane (3rd from right)35 Traffic lanes with no lane markings 36 Shared bicycle lane straightahead 37 Shared bicycle lane left 38 Shared bicycle lane right 39Clover-leaf section 40 Traffic circle 41 Traffic circle - entering 42Traffic circle - leaving 43 Two-way driveway, right side 44 Two-waydriveway, left side 45 One-lane driveway, proper direction 46 One-lanedriveway, improper direction 47 Unpaved, unmarked 48 Construction detour49 Accident detour 50 Contradictory lane information 51 One-way lane,two-way traffic 52 Bridge lane 53 Cul-de-sac 54 HOV 55 HOV+ 56 Bicycleparking 57 Crosswalk 58 Sidewalk 59 Single parallel parking space 60Single diagonal parking space 61 Parking on non-standard side 62 Parkinglot, set spaces 63 Parking lot, open parking 64 Oversize vehicle parkingspace 65 Valet parking pickup/drop-off space 66 Red parking zone 67Yellow parking zone 68 Green parking zone 69 White parking zone 70 Ferryor elevator parking space 71 Farm or construction equip parking 72Handicap parking space 73 Private garage 74 Motorcycle parking 75Off-road bicycle path 76 Off-road pedestrian path (paved) 77 Off-roadpedestrian path (unpaved) 78 Off-road animal path 79 reserved 80-254unknown 255

A lane type of zero means that no lane information is included in themessage or sub-message. Two indeterminate lane types of 1 and 2 are usedwhen the lane is not in an intersection or is in an intersection,respectively. If no information about a lane is available, then a lanetype of 255 is used. A line type of 3 refers to part of an intersectionthat is shared between multiple lanes.

The beginning and end of a lane definition is determined by each V2Vtransceiver, then improved and perhaps discarded as lane information isshared. In general, lanes start and end at intersection boundaries.Thus, the pavement within the intersection proper may be encoded simplyas an “intersection,” or a more definitive lane type may be used. Laneslonger than 100 meters are typically broken into multiple lanes. These“short lanes” typically allow a lane to be encoded with a small numberof points, such as two end-points, or small number of b-spline points.Short lanes facilitate coding of turn lanes, driveways, sharedcenter-lanes, and the like. Short lanes also facilitate relativelyaccurate accident and near-miss history recording.

Lane types 11 through 17 number lanes from the center, outward. Fordrive-on-the-right regions, Lane 1 is the left-most lane.

A substantial number of lane types are defined for parking. This isbecause parking information, and avoiding parking-lot and parking in/outscrapes is a major advantage of some V2V embodiments in this invention.For example, lane types 57 through 75 define various types of parking,low-speed, or specialty locations for vehicles.

The “Lane or road classification change,” value 29, is appropriate whenthe prior lane purpose, such as a freeway lane, changes at this locationto another purpose, such as a signal-controlled city street lane. Thisdesignation is not meant for common configurations, such as a merginglane ending

A number of lane types are defined for pedestrian, bicycle and animallanes and paths. These lane types facilitate using V2V embodiments forsafety involving pedestrians, bicycles and animals. These lane typesalso facilitate uses of V2V data for benefits in addition toanti-collision. For example, V2V messages could be used to assist inemergency rescue on a hiking trail.

It is possible that two equipped vehicles will not agree on adesignation for a lane. Thus, they may transmit conflicting laneinformation. Generally, detection of conflicting lane information shouldbe regarded as a risk condition. Note that not all lane designationvalues are contradictory. Multiple lane designations may be sent byusing more than one sub-message in a message containing a lanedesignation.

It is desirable for a government, Standards body, de facto or pseudostandards organization to define a comprehensive and structured laneclassification system. Such a system should include the specificphysical boundaries, entry and exit points, and permissible behavior foreach vehicle type for each lane.

A relatively large number of parking lot situations are encoded.Although usually minor, parking lot, low-speed collisions are extremelyfrequent. Therefore, there is significant advantage to V2V users ofhaving good encoding for this information. For example, if two vehiclesare next to each other in diagonal parking, and one vehicles is backingout at an angle such that a scrape is a neighboring vehicle is likely,it is useful to code both vehicles as being in “diagonal parkingspaces,” with a “side-swipe collision” coded in a message, tocommunicate exactly what the problem is. Compare this with one carbacking out while another car approaches at an excessive rate of speed.Now, the two lane encodings will be “diagonal parking space,” “parkinglot,” with a “rear-ender” as the collision type.

Message Types

The 6-bit sub-message type field at the start of all sub-messagesprovides up to 63 sub-message types, in one embodiment. Some of thesesub-message types are reserved for future definition. There are manymore than 63 actual message types, because some types indicate a“sub-message category,” where additional information in the sub-messageselects different formats of data within that sub-message. Somesub-message types define only a fixed length, permitting a wide range ofinformation within the sub-message, as further defined by fields withinthe sub-message.

XML, for some sub-message types, provides a general-purpose method toadd information to V2V messages.

TABLE 8 Sub-message Types Bit Sub-message Type Value Length Type 0Message n/a 114 Null message 0 24 Vehicle position 1 64 Vehicle coredata 2 112 Message collision warning - time slot 3 30 Message collisionwarning - location 4 78 Data request 5 Signal power 6 Risk detail 7Vehicle size detail 8 74 Vehicle identity detail 9 Traffic detail 10Conditions detail 11 Location detail 12 Accident detail 13 Detour detail14 Forwarding detail 15 HOV detail 16 Calibration beacon 17 Emergencymessage type 18 Roadside message type 19 Traffic signal detail 20Courtesy message 21 Parking detail 22 Location history 23 Lane datasharing 24 Message encryption and signing 25 Audio data 26 Video orimage data 27 Commercial information 28 Network Warning 29 IP embedded30  200 bit 31 200  400 bit 32 400  800 bit 33 800  1600 bit 34 1600 3200 bit 35 3200  6000 bit 36 6000 12000 bit 37 12000 Reserved . . .-62 Test - ignore message 63

Table 8, above, identifies some sub-message types. This table providesexamples of sub-messages. Some of these sub-messages are described inmore detail elsewhere in this document. The Type 0 message is not asub-message; it has been described extensively, above. The Type 1Vehicle Core Data sub-message provides essentially the same fields, as asub-message as the basic Type 0 message. Type 63 is a Null message, usedas filler or pad. It contains two fields: the sub-message type and alength field.

The Type 62 is a test message; it is to be ignored. It may containwhatever data is desired for system testing; actual V2V transpondersshould ignore the contents past the length field.

The two Message collision warning sub-messages are described in detailbelow. The Vehicle size sub-message is described in detail below.

The Data request sub-message type 5 is shown below in Table 9. Followingthe sub-message type field is n 8-bit Flags field. Each of these eightbits, it set to one, indicates to what type of V2V transponder therequest is directed. The General flag indicates that any V2V transpondermay respond. The Location flag indicates that the vehicle identified bythe Location fields should respond. The Vehicle type flag indicates thatvehicles matching the Vehicle type field should respond. The Lane fieldindicates that vehicle in the lane identified by the Lane designationfield should respond. The Roadside flag indicates that Roadside V2Vtransceivers should respond. The last three flags are reserved. TheLocation, Vehicle type, and Lane designation fields indicate theidentity of one or a class of V2V transponders to respond. The Requestbit field comprises a 64-bit field where each bit corresponds to asub-message type desired in the response.

TABLE 9 Data Request Sub-message Fields Data Request Sub-message LengthField in Bits Value Sub-message type 6 5 Flags (General, Location,Vehicle 8 Type, Lane, Roadside, reserved[3]) Request bit field 64Location: offset N-S 24 Location: offset E-W 24 Vehicle type 6 Lanedesignation 8 Reserved 16 Subtotal 154

The network warning sub-message indicates an accidental or intentionalviolation of V2V protocol. This warning serves two purposes. First, itcautions all vehicles in range that V2V messages are possibly invalid,and therefore caution in interpretation should be used. Second, itrequests all vehicles in range to capture information that may be usedimmediately or subsequently to identify the cause and source of thenetwork problem. Typically, vehicles receiving a Network warningsub-message record a number of received messages, possibly for furtheranalysis. Also, vehicles use their other sensors, such as radar andcameras, to record information. Vehicles receiving a Network warningsub-message may respond with some or all of the recorded data. Forexample, if cameras are used by all vehicles in range, most likely, atleast one license plate capture of a causing vehicle will be captured.If a V2V transponder is transmitting properly in a time slot, then thedelay of the message in the time slot may be used to triangulate theposition of the transmitting vehicle, if at least three vehiclesparticipate in the triangulation. Received power level of the causingtransmissions also provides for crude triangulation. Directionalantennas, or phased array antennas, if available, also assist inlocating the causing transmitter. Network warning sub-messages areforwardable. Examples of reasons to transmit a network warningsub-message include: invalid core vehicle information, jamming, denialof service attacks, excessive transmissions, gross failure to followprotocol, grossly inappropriate messages, and other reasons.

Message encryption and signing sub-messages may comprise public PKIkeys.

Audio information may include voice data from one driver or authority toone or more other drivers. Such information may be safety related or maybe a courtesy message or may be a social message. Message priorityvaries by purpose. One example is parking instructions for an event.

Video information may be still image or moving images. One example isnearby image capture by vehicles in range in response to a networkwarning sub-message.

Video and audio typically includes the format of the information in afield following the sub-message type. One example is a four-character8-bit ASCII field that mimics a file type suffix, such as “way” or “jpg”for a .wav or .jpg file format. A field should be included thatindicates the nature of the message. Fields should be included thatindicate the intended recipients of the message. Such fields might belocation, vehicle type, or lane.

Some sub-message types, such as types 33 through 39 merely encode asub-message length. Additional fields within the sub-message arerequired to indicate contents.

Position Determination

Location is determined more accurately than GPS by the use of a novelalgorithm called “location consensus,” discussed in related subjectmatter.

Lane Maps

Lane information is accumulated, computed, and shared entirely withinthe V2V system, not requiring outside maps that currently do not exist.

A unique feature of embodiments of this invention is the ability tocreate detailed and accurate lane information internally in the overallsystem, without the need for external data sources. As discussedelsewhere herein, while the V2V system is functional without laneinformation, lane information is highly desirable. Embodiments uselocation history to build lane information. Note that location historyis different that location risk history. Lane map collection and sharingis discussed in related subject matter.

Vehicle Elevation

There is a necessity for some vehicle elevation information to bepresent in the system. If all locations or positions were merelyprojected on to a surface of the earth (“a” surface, rather than “the”surface, because more than one geodetic model is possible, thus theremight be more than one “surface”) then on any type of non-grade-levelcrossing, such as an overpass, the vehicles would appear to be passingthrough each other. Clearly, a V2V system must be able to distinguishnon-grade-level traffic from grade-level traffic. Note that this appliesto train, bicycle and pedestrian overpasses and underpasses, too.

There are two specifically defined embodiments herein that address thisissue. The first is to add vehicle elevation to position messages.Because elevation changes much slower than horizontal position, suchmessage information does not need to be sent ten times per second. Therecommended time interval is once per second. A specific “elevation”message is provided for this purpose. The preferred format for thismessage is to provide a signed 10-bit number that represents theelevation of the transportation surface (e.g. street or path) in unitsof 10 cm from the nearest 100 m interval above mean sea level, using thesame geodetic system as for location. Thus, this number has a range of−51.2 to +51.1 meters.

A preferred embodiment is for vehicles to use a “consensus based”averaging for elevation, similar to the consensus based averaging use toachieve consistent position coordinates. For those vehicles within rangeof a local sensor, a vehicle averages its own best computation of “true”elevation with the transmitted elevation of nearby vehicles (correctedfor detected relative elevation differences in the surface), then usesthis average in future transmissions. Vehicles should minimize the rateof change of elevation broadcasts due to consensus adjustments to avoidan artifact of apparent climbing or descending. The preferred maximumrate of elevation change due to such consensus adjustments is 0.1 m/s/s.

The location on the transportation surface should be the same locationused for position. For example, the elevation of the street under thefront center of a vehicle.

Receiving vehicles should maintain a rate of rise (or fall) for eachvehicle, as in the short term, this provides the best predictor. Also,at a critical distance for worrying about possible collisions, a streetslope is in place for most under- and over-passes. A receiving vehiclemay also wish to average or consider the elevation received by vehiclesin front of and to the sides of a given vehicle as a way of judging theelevation or elevation change of a transportation surface.

Vehicles should use an accelerometer, inclinometer, or other inertialnavigation sensors to maintain a smooth continuum of elevation changeswhile moving.

A second preferred embodiment is to include elevation in laneinformation. For relatively linear lane (segments) a starting and endingelevation may be used, although a Bézier or B-spline point at each endis preferred. For most under- and over-passes, a small set of Bézier ofB-spline curves in the vertical plane is preferred. Typically three suchpoints (each with a center location and two control points), one at themaximum (or minimum) of the overpass (or underpass), plus one each atappropriately chosen side locations are adequate. The data in the Bézierof B-spline curves should use the same 10-bit format described above.

Note that the preferred embodiment for elevation is sufficient toindicate curbs, potholes, speed bumps, and other permanent, temporary,intentional or accidental variations in surface height. For the purposesof safety, high precision (say, 1 cm) in not necessary in representingthese objects, only that that exist. Thus, identifying an object (bytype, such as curb, pothole or speed bump), or simply as a lanediscontinuity, using described data formats for either vehicle height orlane elevation, is supported in the described embodiments. For example,if a vehicle hits a pothole (recognizing that the pothole is most likelyunder a wheel, not in the center of the lane), it might choose tobroadcast three elevation messages in succession (say, 0.1 s apart)indicating the effective elevation change. Even with a single bit change(10 cm) receipt of such a message sequence is a clear indication of theobject.

Similarly, as a pedestrian steps off of a curb, a mobile device (a smartphone, using, for example, its internal accelerometer) could broadcastthat elevation change, allowing V2V equipped vehicles (and mobileelectronic devices receiving V2V messages) to record the curb. In thisway, “curb maps” could be created easily, without the need for agovernment entity or third party to create and distribute such adatabase.

The most preferred embodiment is the use of both elevation messagesevery second from vehicles plus elevation information included in alllane descriptions.

Note that the “once per second” transmission rate (or otherpredetermined rate) should have some dither imposed on the timeinterval, or at least randomly selected initial transmission time(within a one second window), so that such elevation messages to nottend to “clump” in time.

Note that vehicles may generate their own, internal, stored, set ofnon-grade-level crossings, in a minimal case, by observing that a numberof vehicles appear (using surface of the earth locations) to be passingthrough each other.

Forwarding

In some embodiments, a message is “forwarded,” that is retransmitted bya recipient. When a message is forwarded, the Forwarded Flag in theFlags field of the message header is set to one. There are two basicmodes that limit the extent of forwarding: hop count and geographicaldistance. When a message is forwarded, the hop count is increased byone. When the hop count reaches a threshold, forwarding is stopped.Ideally, the hop count threshold is a function of the risk value and themessage type.

The second mode to limit forwarding extent is use of geographicaldistance. When the distance between the location in the message and thelocation of the potential forwarder exceeds a threshold, forwarding isnot done. This mode has an advantage over hop count. Consider the caseof an accident at the side of the road. There is oncoming traffic fromboth directions. Suppose the forwarding threshold is one kilometer. Theapproaching traffic is continuously reducing its distance to theaccident, while the receding traffic is increasing its distance.Therefore, there are likely to be more hops in the direction of theapproaching traffic than in the direction of the receding traffic. Thisis appropriate, as the “one kilometer range” is relevant for itsdistance, not the arbitrary number of hops it took a caution message toreach a vehicle.

Forwarding of messages is discussed in related subject matter.

Hacking and Security

Hacking of any electronic V2V system is inevitable. Preferredembodiments include methods to identify improper use and record such usein order to discourage, catch and prosecute hackers. We refer any abuseof a V2V system, any intentional false information or blocking of validinformation as hacking.

One possible form of hacking is to hide a transmitter near a roadwaythat transmits invalid information. It the transmitter broadcasts itscorrect location, then presumably finding and stopping the hacker isstraight-forward. Vehicles could record the location of a possiblehacker and forward that information to authorities. Such activity isideally completely automatic and involves no actions, knowledge orapproval of the vehicle's occupants.

Thus, it seems unlikely that hackers wish to broadcast their correctlocation. Radio waves travel about one meter in 3 ns. The GPS time baseis generally considered accurate to about 14 ns, but many V2Vimplementations will improve on this accuracy. Because the start of eachtime slot is fixed by the GPS time base at the transmitting vehicle, thedistance from a transmitting vehicle to the receiving vehicle may bedetermined by timing the message frame within the time slot as seen bythe receiving vehicle. For example, if the distance from thetransmitting vehicle to the receiving vehicle is 200 meters, the framewill be delayed about 667 ns.

By timing received frames within the receive time slot, V2V receiverswill generally be able to determine the approximate distance to thetransmitter. If this distance is not within tolerances to the locationbeing transmitted, there is a problem. The problem may be a hacker, or afailed V2V transmitter. Either way, this represents a significant riskto the network and information should be recorded and the riskbroadcast.

A hacker may be sophisticated enough to also spoof the GPS time base,essentially setting his own transmit time. However, he can not make thisspoof work with receivers at disparate locations. For example, as areceive vehicle passes by a transmitter, the delay of the received framein the receive time slot should get shorter until the two V2Vtransceivers are at a minimum distance, then get longer. Thus, even if asending time is spoofed, unless they are random, a receiver will be ableto tell the “closest point” to the hacker. Random time delays from whatpurports to be a single vehicle are essentially a smoking gun of hackedtransmissions.

Wide spread alarm by all receivers that a hacker is within range shouldbring authorities, with directional receive antennas and other tools,quickly to the scene.

In a denial of service (DoS) attack, once vehicles are out of range ofthe hacker, they may easily send appropriate alarm messages.

Some people are concerned that a V2V system should be immune to hackingand provide some level or sender confidentiality. Such concerns areseriously misplaced.

First, any electronic communication system is subject to abuse. We haveemail and phone spam. We have vehicles on the road today that areneither safe nor legally compliant nor insured. There are a great manyways to hack, spoof, or misuse ANY V2V system. Even if the communicationprotocol were bulletproof, which it cannot be, sensor input to the V2Vsystems is nearly trivial to spoof. Everything from GPS position toinformation from radar detectors to video feeds is easy to alter. Denialof service attacks and just plain jamming are trivial to implement.

The basis of public usability will be both legal ramifications to abuse;public acceptance of the system; and an understanding of the risks ofabuse. People can now throw rocks at cars, dump nails on the street, orshoot out signal heads. Yet, these events are quite rare. Therefore, itis not reasonable to expect that complex electronic protection will beeither required or effective against intentional abuse designed to causeharm.

Vehicles are not anonymous. They are large, visible, and have licenseplates. Considering that every usable and valid V2V packet has atransmitter's location in it, it is a simple matter to identify thetransmitting vehicle through visible means. Other means, such asdirectional antennas or crowd-based or statistical identification may beused for a transmitter who attempts to illegally be invisible. Thus,there no little reason to add attempted anonymity into a packet. Infact, a sender ID may be highly valuable. The ID is easily done in a waythat provides some control against abuse, such as using hashed VINnumbers, or assigned ID numbers from a gov't agency, or using a built-intransmitter ID. Such identification numbers are difficult for a generalconsumer to trivially trace back to a specific individual.

Using the vehicle's location as its ID provides adequate ID for V2Vapplication purposes.

Recording and Encryption

In some embodiments, all messages transmitted or received are stored. Insome embodiments, a fraction of all such messages are stored. Apreferred embodiment is storing a fraction of all transmitted andreceived messages that exceed a risk threshold.

In some embodiments, deletion of stored messages may be blocked exceptby a qualified technician or by the entering of a special code. Forexample, if an accident is detected, the storage of messages around theaccident (both temporally near and spatially near) may be valuable indetermining fault. Government based roadside transmitters or emergencyvehicle based transmitters may instruct equipped vehicles, via atransmitted V2V message, to both store messages and to block deletion.

In order to maintain privacy of vehicle operators, stored messages maybe encrypted. Public key cryptography may be used so that either theowner's private key, or a government entity's private key, or both, arerequired to recover the cleartext messages.

Encryption, V2V information storage and retrieval are discussed inrelated subject matter.

Traffic Signal Optimization

A V2V system, in embodiments described herein, has the ability todramatically improve traffic flow in congested area without the expenseand land needed to build additional lanes or expensive air structures.

The basic operation consists of traffic signal controllers (“signals”)listening to V2V messages of vehicle approaching the intersection, thenaltering its timing for improved or optimized performance. Improvedperformance criteria may comprise (i) minimizing total vehicle delay;(ii) minimizing total person-minute delay; (iii) minimizing total fuelconsumption; (iv) maximizing the total number of vehicles that passthrough the intersection in a particular period of time; (v) providingdiffering quality of service (QoS) to different classes of vehicle; (vi)participating with other signals to optimize traffic flow over a widearea; (vii) combinations of these criteria and other criteria.

Prior art typically consists of a fixed length total cycle with binarylane sensors to control phase timing. While this technology is a largeimprovement over fixed phase timing, it is simply unable to optimizeover a larger area, where the real strength of a V2V based signaloptimization becomes significant.

Prior art signal engineering comprises counting vehicles to create astatistical foundation for the intersection design and signal timing.Phase timing is then adjusted by sensor primarily so that a phase doesnot stay green where there is no vehicle present to take advantage ofthat phase.

The preferred embodiment of this feature has the signal collect all theV2V messages for vehicles with range that are approaching theintersection. The signal then runs simulations of different timingpatterns in order to find an optimum timing, base on the selectedcriteria for “optimum.” One improvement over prior art is variablelength total cycle time. Another improvement is arbitrary phasesequencing. Yet another improvement is lower “all red delay” andreduction of other inter-phase delays. The reason that prior art usescertain phase sequences and certain inter-phase delays is to assure thatall of the vehicles from one phase have cleared the intersection beforeenabling (“turning green”) the next phase. With V2V messages, the signalconsiders the location and speed of every vehicle clearing theintersection in order to turn on the subsequent phase with an optimallyshort delay. In fact, the entire concept of a fixed length total cycleshould be abandoned in favor of simulation based timing. A considerationis the “worst case delay” that a single vehicle or pedestrian may haveto wait. Such a consideration would be built into the signal-timingalgorithm. Note however, that in such an optimized traffic environmentpeople, in general, will be willing to wait longer at a given signal if,overall, their trip time is shortened. Note, also, that through V2V theexact time may be provided to the waiting driver, helping to avoidfrustration due to the delay. Yet another advantage is the shortening ofthe minimum phase time, based on the actual time it takes for vehiclesor pedestrians to clear the intersection.

In one embodiment, a signal operates “stand-alone,” meaning it considersthe V2V messages and optimization in the context of its ownintersection.

In a preferred embodiment, adjacent signals communicate with each othertheir “proposed” upcoming signal timing. Then, each signal re-computesits simulation based planning. It then communicates this revised plan toappropriate adjacent signals. Multiple signals continue to simulate,plan, share, and adjust their proposed, then actual, timing in order toreach a more optimal overall timing than is possible to achieve in anyisolated signal-timing scheme.

As people trained in the art will appreciate, such a system will developpatterns. For example, it may be common that a large group of vehiclespasses through a series of lights unimpeded, only to be frequentlystopped at a particular cross-street. Drivers who frequent this areawill then adapt their behavior to this pattern. They may slow, speed up,space themselves appropriately, or take different routes to takeadvantage of an expected pattern.

Thus, in the long run both the signals and drivers will evolve theirbehavior to provide increasingly optimized overall traffic flow.

The cost of implement V2V electronics, including the necessary softwareand hardware to implement real-time simulations is very much less thancost of building additional lanes.

Improved traffic flow increases overall productivity in a society,because less time is wasted in traffic.

Improved traffic flow improves the overall GDP of an economy by reducingthe total amount of fuel used in that economy.

Proposed signal timing messages may comprise in part lane end-points andtime stamps, both discussed elsewhere herein. For example, one laneendpoint and two timestamps would indicate a proposed green phase forthat lane. An additional field may comprise an expected vehicle countfor that phase. If the lane enters the intersection the count indicatesthe expected traffic to move from that lane into the intersection. Ifthe lane exits the intersection the count indicates the expected trafficflow out of the intersection in that lane.

In this way, a signal may communicate to adjacent signals its expectedtraffic flow for any lane for any period of time in the next 23 hours.Signals, may, if appropriate, forward this information to their ownadjacent signals. In this way, traffic at a distance, such as on anexpressway, may be forward communicated to signals more than the directV2V range away.

Time stamps less than an hour in the past indicate past (actual) flow.Time stamps from the present moment up to 23 hours in the futureindicate expected flow.

Consider one scenario. A city has extensive cross-town commuter traffic.Much of this traffic commutes to businesses within the city. The citydesires to optimize the experience of employees and businesses withinits borders. Thus, it implements priorities for the signals on streetsand expressways so that commute traffic to work in the morning and fromwork in the afternoon is provided with a higher QoS than either trafficin the opposite direction or cross-traffic. Considerable time delay andthroughput improvement is possible with the embodiments describedherein.

Similar scenarios apply to large events such as ball-games, or students,faculty and staff entering and leaving a college campus.

Consider another scenario. Traffic heading North is given QoS preferencefrom the hour to half past the hour, such as 8:00 to 8:30. Then trafficheading South is given preference for the second half of each hour.People will learn such QoS preferences, and in many cases be able toadjust their schedule to take advantage of the shorter and morecomfortable travel experience. The QoS preference may be substantial,such as no red lights at all, once a vehicle is synchronized with ablock of moving vehicles. The additional delays to non QoS traffic arenominal, because the total phase times at each intersection remain thesame—only the synchronization is changed.

Prior art for intersection design uses fixed lane designations, such asstraight through or turn lanes. The lane designations are typicallydesigned in conjunction with phase planning. For example, if aparticular lane is used for both left turn and straight through, then itis desirable to have a green left turn and a green straight on at thesame time.

However, with the V2V-based simulation embodiments as described, lanedesignations may be variable. Electronic signage may be used to indicatelane function, rather than painted arrows and fixed signs. In addition,V2V messages describing lane functions would be sent regularly (as gov'tprovided lane maps) by the signal to vehicles, so that equipped vehicleswould automatically know lane assignments. In this way, considerablyimproved signal flow optimization is possible. The cost of electronicsignage is far less than the cost of building additional lanes.

In many areas, traffic flow changes dramatically with different times ofthe day or different days of the week. Earliest in the day arecommercial delivery vehicles, then commuters going to work and parentsdropping off kids at schools. Then, there is a lull, followed byshoppers, then afternoon rush hour. Then, people go to restaurants ortheaters. Prior art intersection design is unable to accommodate thesevariations in traffic flow. The real-time simulations and optimizationsdiscussed in embodiments herein does adapt to these daily fluctuations.

Signals may request and use predictive movement messages, discussedbelow.

Time Base and Timestamps

The preferred embodiment for a time base is Coordinated Universal Time(UTC). There are known corrections to convert from GPS time to UTC. GPStime is generally considered accurate to about 14 ns.

Zero time of the basic time interval, which also determines the timingfor time slots, begins at 12:00:00 am GMT. This resets to zero every 24hours. Time units for time stamps also reset to zero the same way.

Time stamps, when used, have a resolution of one millisecond (ms). Thereare 86,400,000 ms in 24 hours. A 32-bit integer is used in a time stampto represent the number of ms that have elapsed since 12:00:00 am GMT.Note that time stamps are unaffected by time zones and Daylight SavingsTime.

TABLE 10 Time Stamp Sub-message Format Time Stamp Sub-message Size inField Name bits Format Sub-message type 6 value = 25 Time stamp in mssince 0:00:00 32 unsigned integer Total Bits in Sub-message 38

Most messages to not need a time stamp. There is an “implied timestamp,” which is used for all messages that do not contain an explicittimes stamp. The preferred embodiment for the implied time is the end ofthe basic time interval in which the message is sent. The implied timestamp is an important and novel part of most embodiments.

Thus, ALL messages (without different time stamps) received in a basictime interval have data valid at the SAME time. This is a majoradvantage for computing future trajectories and possible collisions.

There is a second advantage of this embodiment. The core information oflocation and velocity does not communicate, typically, all of theinformation available to a transmitting vehicle. For example, it doesnot include acceleration, braking, or turning. Thus, typically, atransmitting vehicle has “better” information about its own futuretrajectory than is contained in a core data message. The use of a futuretime (the end of the current time interval) allows the transmittingvehicle to make a more informed estimate of the likely location,velocity and heading at that future time, and transmit that information.

Additional Embodiments

FIG. 5 shows an exemplary vehicle collision. A purpose of embodiments isto prevent, mitigate, or reduce such collisions. See also the CollisionsTypes identified in FIG. 12. The collision types listed arenon-limiting.

FIG. 6 shows an exemplary busy intersection. Prior art is not able tohandle either the number of vehicles within range, particularly for twolarge freeways crossing each other, nor the number of vehicles enteringa range per second. These problems are solved with the embodimentsdescribed herein.

FIG. 7 shows an exemplary embodiment of transceiver, with some optionalelements. The transceiver is under the control of CPU or otherprocessor. One or more radios provide send and receive communication toother transponders. An alternative embodiment uses optical interfaces.Both non-volatile memory, such as Flash and working memory, such as RAM,implement the functions, algorithms, methods and software ofembodiments. Vehicle operational data, such as speed, heading, braking,lights, and many other vehicle attributes are provided via theInput/Output module, which also provides input from a global positioningsatellite system (such as GPS or others), radar, video, cameras, sonar,and other transponders. An optional security module may provide use ofdigital certificates, encryption, decryption, controlled access tostored data, and the like. A gateway may interface to other devices orother networks, such as cellular phones (audio, text, images, video ortext), wireless sensors, Bluetooth devices, WiFi and WiMax networks,including devices within an equipped vehicle and devices on othervehicles or fixed devices or networks. Not shown are an internal clock,power supplies, user interface, and other standard, common or customcomponents.

FIG. 8 provides one embodiment of a final risk value table. Standardizedrisk values are an important feature for interoperability andpredictable performance.

FIG. 9 provides one embodiment of vehicle behavior sub-risk values. Suchsub-risks are added or otherwise combined with other sub-risks toproduce the final risk value, for each vehicle, to broadcast.

FIG. 10 provides one embodiment of weather and road condition sub-riskvalues. Such sub-risks are added or otherwise combined with othersub-risks to produce the final risk value, for each vehicle, tobroadcast.

FIGS. 13 and 14 provides sample embodiments of braking and turningsub-risk values. Such sub-risks are added or otherwise combined withother sub-risks to produce the final risk value, for each vehicle, tobroadcast.

Road history is another type of sub-risk that may be included in thefinal risk value.

Conserving Gas

In one embodiment, a V2V system optimizes gas mileage by slowing down inorder to avoid later having to accelerate back to speed. Traffic ahead,and the signal phase timing of signals ahead, are used in thesecomputations.

In one embodiment delivery vehicles dynamically compute alternate routesbased on traffic or signal phase timing in order to minimize totaldelivery time for the vehicle.

Automatic Turn Signals

In one embodiment, a V2V system automatically engages the turn signalsof a vehicle. Ideally, the system uses first any programmed route, suchas a destination or return on a navigation system. If no such route isprogrammed or it is not being followed at the moment, the system usessecond the history of the driver or vehicle, with the expectation thatthe same as a previous route will be followed, most likely. Third, thesystem may use the lane the driver is in, such as a dedicated turn lane.The driver may override the system by simply engaging before or afterthe automatic operation use of the turn signal indicator. Ideally, somesmall indication to the driver is provided to indicate automaticoperation, such as a louder click for a few seconds. One non-obviousbenefit is that if the driver does not wish to make take an indicatedturn, such and indication warns the driver that their planned behavioris different than a predicted behavior. For example, they may not beaware or may not wish to be in a turn lane.

DEFINITIONS

Ideal, Ideally, Optimum and Preferred—Use of the words, “ideal,”“ideally,” “optimum,” “optimum,” “should” and “preferred,” when used inthe context of describing this invention, refer specifically a best modefor one or more embodiments for one or more applications of thisinvention. Such best modes are non-limiting, and may not be the bestmode for all embodiments, applications, or implementation technologies,as one trained in the art will appreciate.

May, Could, Option, Mode, Alternative and Feature—Use of the words,“may,” “could,” “option,” “optional,” “mode,” “aspect,” “capability,”“alternative,” and “feature,” when used in the context of describingthis invention, refer specifically to various embodiments of thisinvention. All descriptions herein are non-limiting, as one trained inthe art will appreciate.

Claim Specific Comments

Comments below repeat subject matter contained in the originalspecification. They are provided here for convenience.

Embodiments include a system using the described transponders, andmethods for implementing the capabilities and features. Embodiments alsoinclude vehicles comprising the transponder, aftermarket transponders,and portable transponders such as might be carried by a pedestrian,bicyclist or sportsperson, or used on an animal. Embodiments includeimplementations in software or hardware on a personal electronic device,such as a smart phone or tablet, including embodiments where part of thefunctionality is one device and part of the functionality is in anotherdevice, including devices or software sold by more than one source.

The subject vehicle may be the vehicle in which the transponder islocated, either permanently or temporarily, or may be another vehicle.Note that the term “vehicle” is broadly defined elsewhere in thisSpecification. Regular” transmission means ideally in the same time slotin all or most of the basic time interval. Most means 50% or more. Timeslots are reselected as described, such as due to a message collision ora timeout.

MAC and IP addresses are as widely used in the art, including Ethernet,IPv4, and IPv6. These are generally defined by IEEE Standards and byRFCs.

Note that although MAC and IP addresses are not use for core safetymessage, they may occasionally be included as data, rather than as aheader, within some messages; and may be used in headers in non-safetymessages in interval class B.

Embodiments and possible limitations include: A minimum number of timeslots of 50, 100, 150, 200, 250, 500, 1000, 2000; A minimum number oftime slots for vehicle safety messages comprising (i) vehicle position,(ii) vehicle speed, and (iii) vehicle heading are 15, 50, 100, 150, 200,250, 500, 1000, or 2000; A minimum number of time slots for vehiclesafety messages comprising (i) vehicle position, (ii) vehicle speed,(iii) vehicle heading, and (iv) vehicle identification suitable for V2Vpotential collision warnings are 15, 50, 100, 150, 200, 250, 500, 1000,or 2000; A minimum number of time slots for vehicle safety messagesdedicated to being transmitted by a combination of emergency vehiclesand government authorized road-side units are 10, 25, 50, 100, 150, 200,250, or 500; A maximum time for the basic time interval is 2, 1, 0.5,0.25, 0.1, 0.05, or 0.01 seconds; A minimum transmit rate for V2V safetymessages or messages suitable for V2V potential collision warnings is 1,2, 5, 7.5, 10, 15, or 20 times per second; A maximum message length fordata, exclusive of: wireless header, preamble, signal field, frame checksum, and inter-frame guard time is 114 bits, 282 bits, 36 bytes, 50bytes, 75 bytes, 100 bytes, 150 bytes, 200 bytes, 250 bytes; A maximummessage length for data, exclusive of: wireless header, preamble, signalfield, frame check sum, and inter-frame guard time but inclusive of anyMAC or IPS address, if any, is

114 bits, 282 bits, 36 bytes, 50 bytes, 75 bytes, 100 bytes, 150 bytes,200 bytes, 250 bytes; A maximum time of an inter-frame guard time of 1,2, 3, 4, 5, 7.5, 10, 15, 20, 25, 50 microseconds; An inter-frame guardtime computed by maximum intended range of single-hop V2V communicationsdivided by the speed of light, plus two times the allowable common timebase error; A maximum intended range of single-hop V2V communications of50, 100, 250, 500, 750, 1000, 1500, 2000, 2500, 5000, or 10000 meters; Aminimum number of vehicles that may simultaneously use a V2Vcommunications system with 90%, 95%, 99%, 99.5%, 99.9% or 99.99%reliability is 10, 25, 50, 75, 100, 150, 200, 250, 350, 500, 750, or1000; A minimum number of time slots reserved for land vehicle use; Atransceiver, for each subject vehicle, transmits a vehicle safetymessage or a V2V message suitable for collision prevention no more thanonce per basic time interval, in at least 90% of all basic timeintervals; Each non-forwarded safety message comprising a subjectvehicle position is unique for the basic time interval in which it isbroadcast; Each safety message is updated for each basic time intervalin which it is broadcast; Each safety message comprises data that is tobe interpreted as valid precisely at the end of the basic time intervalin which it is broadcast; V2V system incorporating transponders of thisinvention are free of road-side units (RSU's); V2V system incorporatingtransponders of this invention are free of the necessity for any fixedinfrastructure, such as servers, cell towers, or RSUs; All time slotsare available for use by mobile transponders. Such limitations orfeatures of this paragraph may be in any combination. A preferredembodiment is a basic time interval of 0.1 seconds comprising 1000 timeslots with an intended range of 1000 meters comprising V2V safetymessages of 114 data bits and 282 data bits, supporting a minimum numberof time slots reserved for a combination of emergency vehicle andgovernment provided RSU use.

An embodiment of a transceiver continues to transmit in its selectedtime slot until either (a) it receives a transmit collision messageinvolving itself, or (b) a time slot reselection timer expires and thecurrent time slot number is not in “no-reselection” range. Time slotreselection timers may be 1, 2, 5, 10, 15, 30, 60, 90, 120, 180, 240,300, or 600 seconds. No-reselection ranges may be 10, 20, 25,

50, 75, 100, 125, 150, 200, 250, 500 or 750 time slots. A preferredembodiment uses 90 second reselection timer and 100 time slotno-reselection range (slots 1-100) for interval class A and 25 time slotno-selection range (slots 976-1000) for interval class C.

Embodiments of a geographical grid for use in transmitting only offsetsfrom a grid point include any predefined set of grid points; grid pointsspaced at 2°, 1°, 0.5°, 0.25°, 0.1°, 0.025° for latitude or longitude orboth, or any interval in the range of 0.01° to 5°. Either or both thegeographic grid and the transmitted offsets may be in units of latitude,longitude, or distance, or any combination. Elevation may also be basedon elevation intervals while transmitting only an offset from apredetermined interval. Elevation intervals may be 10, 50, 100, 200,500, 1000 meters, or any interval between 1 and 1000 meters or between 1and 1000 feet.

A “message collision occurring” may comprise recognition of such acollision, such as receiving a valid notification and processing of arelevant collision.

Wireless transmission includes optical, as well as radio.

Pre-assigned vehicle identifiers include VIN number, license plate, MACaddress, cell phone number, cell phone SIM number, IMO shipidentification number, aircraft tail number. Such numbers aresubstantially permanent, noting that there are conditions forre-assignment.

Claim 4 describes a communication protocol often called TDMA, whereinthe basic time interval is sometimes called a “frame,” and time slotsare sometimes called timeslots. This embodiment is “self synchronizing”meaning that the transponders in a system self-synchronize without theaid of RSUs. Typically, but not required, is global satellite positionsystem, such as GPS and others. The system also “self-selects” timeslots for transponders, rather than have time slots assigned by a devicewhose function is to assign time slots to all users of the shared media.

Time slots are enumerated from 1 to n, noting that there are an infinitenumber of equivalent methods to identify time slots. Some fraction oftime slots may be reserved, used for another purpose, or blocked; suchembodiments are included in the scope of the claims.

Note that it may take a transponder a brief amount of time tosynchronize with other transponders on power-up, or possibly after beingout of GPS receive range for a while. During this time it may listen tomessages, but should not broadcast. Such embodiments are within thescope of the claims.

In general, encoding rates that use lower bit-rates are received morereliably, other factors being equal. Therefore, it is desirable to usethe lowest possible bit-rate encoding available based on message lengthsuch that the transmission fits in one time slot, for interval class Aand C messages.

Monotonic time slot selection formula means that, for interval class A,the probability of selecting a time slot t1 is higher than or equal toselecting a time slot t2, where t1 is less than t2. The probability forsome time slots, in particular, those outside of the current intervalclass A region, may be zero. Monotonic selection formulas for intervalclass C are similar, with t2 less than t1. Note that t1 and t2 should be“available” time slots, meaning generally they are not in use, or have asignal to noise ratio below a threshold. Time slots may also be notavailable for other reasons. Non-available time slots are excluded fromthe time slot selection formula, and do not affect its monotonicity.Groups of time slots may be used for a portion of a time slot selectionformula, which is within the scope of the claims. Claim 7 describes asubset of a monotonic time slots selection formula.

claim 8 is a restatement of the above where both interval class A and Cselection algorithms are combined into one claim; t0 is one end of thebasic time interval, in one embodiment.

It is desirable to “clump” selected time slots at either the lower endof interval class A or the upper end of interval class C, such thatthese interval classes are as small as possible, making interval class Bas large as possible, within the desired probabilities of having a newlyselected time slot available when selected; that is, that there is not amessage collision during the first transmission in a newly selected timeslot. The size of interval classes A and C are redefined very basic timeinterval, based on the highest and lowest time lost in use for eachinterval, respectively. Note there is a buffer zone of time slotsbetween interval classes A and B, and between classes B and C.

Thus, the new time slot selection formula should generally include allavailable time slots within the current interval class, modified suchthat the selection range is smaller if the current usage is light andlarger if the usage is heavy. Thus, if usage is above a threshold, firstthe closest buffer zone (or part of it) may be included in the list ofavailable time slots, then available time slots currently in intervalclass B.

Even though a message belongs to a particular message class and istherefore to be broadcast in its associated interval class time region,the message may also be broadcast in interval class B (or class A, formessages normally in class C) if necessary to assure a desiredreliability of receipt. This may be viewed as changing the message classof that message, or as a temporary departure from the regular associatedinterval class. Such embodiments are within the scope of the claims.

Re-evaluation time intervals may be fixed or variable. In general, it ispreferable to select a new time slot during periods of both low usageand low risk; re-evaluation time may comprise such factors.

Selection of a new time slot not due to a message collision should beinfrequent enough to reduce the chance of such a new time slot selectionproducing a message collision in that time slot below a threshold, yetfrequent enough to keep the size of interval classes A and C as small asreasonable, subject to the constrains of the embodiment. Such aconstraint may be a minimum likelihood of having a message collision inthe newly selected time slot, such as below 10%, below 5%, below 1%,below 0.5%, below 0.1%, or below 0.05% probability. The constraints forselecting a new time slot based on current message collision compared toselecting a new time slot for a different reason, may be different orthe same. The constraint may be responsive to current risk or to messagepriority. The constraint may alter the new time slot selection function.For example, the range of available time slots may be expanded orreduced to meet the constraint. As another example, the shape of thefunction may be altered, such as from exponential to linear, or fromlinear to flat.

Note that, as explained above, the CSMA protocol, including CSMA/CS andCSMA/CA, including ad hoc forms and those forms described in IEEE802.11p, are not “pure,” because only interval class B is available formessages under these protocols. First, it is desirable to use the sametime slot range in each basic time interval for messages that need to bebroken up and broadcast (or sent point-to-point) in more than one basictime interval. Thus, the time to send applies only the start of themessage, subject to detecting message collisions or having the in-usetime interval become unavailable to the change of interval class B startor end point. Second, the random backoff needs to select a transmit timewithin the then-current interval class B. Thus, the random backofffunction may need to be altered.

Suitable buffer zone sizes are 10, 20, 50, 100, 125, 150, 200, 250, or300 time slots. Suitable buffer zone sizes are 10%, 15%, 20%, 40%, 50%,75%, 100%, or 200% of a current interval class A or C size. Buffer zonesizes may be a combination of a numerical time slot count and apercentage of an interval class size, such as the larger of 50 timeslots or 50% of current closest interval class A or C size, subject thelimit of all time slots. Buffer zone size may be fixed or variable.

No road-side units are required. Time base synchronization, time slotassignment, location determination, lane determination, management ofmessage collisions, calibration, gateways, authorization andauthentication, protocol headers, emergency information, messageforwarding, vehicle identification, and other features and embodimentsdo not require and may be free of any and all road-side units or centralauthority.

What is claimed is:
 1. A device of manufacture for use in avehicle-to-vehicle (V2V) communication system comprising: a V2Vtransceiver adapted to operate in a transmitting vehicle; wherein theV2V transceiver is adapted to accept as input a subject vehicle positionand a subject vehicle heading; wherein the V2V transceiver is adapted tobroadcast a V2V safety message comprising (i) the subject vehicleposition; (ii) the subject vehicle heading; and (iii) a subject vehiclespeed; wherein the V2V transceiver regularly, wirelessly, transmits theV2V safety messages; wherein the V2V safety messages, as transmitted,are free of media access control (MAC) addresses and free of internetprotocol (IP addresses) and transmitted at least five times per second.2. The device of claim 1 wherein: the V2V safety messages are free of apre-assigned transmitting vehicle identifier.
 3. A device of manufacturefor use in a vehicle-to-vehicle (V2V) communication system comprising: aV2V transceiver adapted to operate in a transmitting vehicle; whereinthe V2V transceiver is adapted to accept as input a subject vehicleposition and a subject vehicle heading; wherein the V2V transceiver isadapted to broadcast a V2V safety message comprising (i) the subjectvehicle position; (ii) the subject vehicle heading; (iii) a subjectvehicle speed; wherein the V2V transceiver regularly, wirelessly,transmits the V2V safety messages; wherein the V2V safety messages arefree of a pre-assigned transmitting vehicle identifier.
 4. A device ofmanufacture for use in a vehicle-to-vehicle (V2V) communication systemcomprising: a V2V transceiver adapted to operate in a transmittingvehicle; wherein the V2V transceiver is adapted to accept as input asubject vehicle position and a subject vehicle heading; wherein the V2Vtransceiver is adapted to broadcast a V2V safety message comprising (i)the subject vehicle position; (ii) the subject vehicle heading; (iii) asubject vehicle speed; a basic time interval of a fixed, predeterminedduration, wherein the basic time interval repeats continuously; whereinthe basic time interval comprises an integer n time slots ofpredetermined duration, sequentially enumerated from 1 to n, andcontiguous; wherein the V2V transceiver is adapted to receive messagesfrom another V2V transceiver wherein the V2V transceiver and the otherV2V transceiver use the same basic time interval, comprising the same ntime slots, and wherein all basic time intervals are time synchronized;wherein the V2V transceiver selects a selected time slot; wherein theV2V transceiver continues to transmit in the selected time slot, in aleast 50% of the basic time intervals, until either (i) a messagecollision in the selected time slot occurs, or (ii) a re-evaluation timeinterval expires, thereupon selecting a new time slot.
 5. The device ofclaim 4 wherein: at least one of the V2V safety messages is transmittedwithin the time interval of one time slot.
 6. The device of claim 4wherein: the encoding method of safety messages is at least partiallyresponsive to the quantity of data in the safety message such that thesafety message, as encoded, may be transmitted within one time slot. 7.The device of claim 4 wherein: the selection of a selected time slot isresponsive to a random number and wherein the selection of a time slotpreferentially selects time slots in a first time slot range over asecond time slot range.
 8. The device of claim 4 further comprising: apredetermined time slot number t0; a time slot selection algorithm;wherein the time slot selection algorithm has a higher probability ofselecting a time slot number t1 than a time slot number t2, wherein theabsolute value of (t1 minus t0) is less than the absolute value of (t2minus t0); and t0, t1, and t2 are integers in the inclusive range of 1to n.
 9. The device of claim 8 wherein: the time slot selectionalgorithm comprises a probability curve that monotically decreases fromthe absolute value of (t1 minus t0) to the absolute value of (t2 minust0);
 10. The device of claim 4 further comprising: a time slot selectionalgorithm; the time slot selection algorithm is responsive to the numberof transmitting vehicles within communication range of the transmittingvehicle.
 11. The device of claim 4 further comprising: a time slotselection algorithm; the time slot selection algorithm is responsive tothe number of time slots in use.
 12. The device of claim 4 furthercomprising: a plurality of message classes; wherein the basic timeinterval is further subdivided into class time regions wherein eachclass time region corresponds with one message class; wherein eachsafety message is a member of only one of the message classes; whereineach safety message is broadcast in the class time region correspondingto its message class; a time slot selection algorithm for each of atleast two message classes; at least one of the time slot selectionalgorithms is responsive to the number of time slots in use in themessage class of that time slot selection algorithm.
 13. The device ofclaim 4 wherein: the re-evaluation time interval is at least 300 timesthe length of the basic time interval.
 14. The device of claim 4wherein: the re-evaluation time interval is at least 600 times thelength of the basic time interval.
 15. The device of claim 4 wherein:the re-evaluation time interval is responsive to current collision risk,or to the number of time slots in use in an interval class, or both. 16.The device of claim 4 wherein: the subject vehicle position describesthe position of intersection of the axial centerline of the vehicle witha perpendicular line touching the front-most portion of the subjectvehicle.
 17. The device of claim 4 wherein: the subject vehicle positionis valid as of the end of the basic time interval in which it isbroadcast.